Re[3]: RETURN_VALUE, DataAccesor
От: 10der  
Дата: 02.07.12 09:17
Оценка:
Здравствуйте, Taison, Вы писали:

T>Здравствуйте, fddima, Вы писали:


T>
T>    [ХранимаяПроцедура("xп_Лица_Сохранение_Лица")]
T>    protected abstract Список<СпорныйВопросПриСохраненииЛица> СохранитьЛицо(ОперацияСохраненияЛица операция, bool операцияПодтверждена,
T>        int? кодЛица,
T>        String инн, String огрн, String окпо, String оконх, String оквэд, String кпп, String кодЖД,
T>        String адресЮридический, String адресЮридическийЛат,
T>        [Direction.ReturnValue("@RETURN_VALUE")] out int новыйКодЛица);
T>


T>При выполнении возвращается ошибка


T>[code]

T>System.IndexOutOfRangeException: An SqlParameter with ParameterName '@новыйКодЛица' is not contained by this SqlParameterCollection.

T>Я перепробовал практически все варианты:

T>[Direction.ReturnValue("новыйКодЛица")] out int новыйКодЛица
T>[Direction.ReturnValue("@новыйКодЛица")] out int новыйКодЛица
T>[Direction.ReturnValue("@новыйКодЛица")] out int @новыйКодЛица
T>[Direction.ReturnValue("@RETURN_VALUE")] out int RETURN_VALUE
T>[Direction.ReturnValue("@RETURN_VALUE")] out int @RETURN_VALUE

T>Помогите пожалуйста. Ещё раз — база SQL Server 2000


1) @RETURN_VALUE — предустановленное имя возвращаемого результата процедуры. Это раз.
2) причем тут селекст в процедуре я не понял...
3) не совсем понял куда вернуть надо?
4) судя по ошибке неправильно передаете параметр

возвращать результат можно двумя варианта при создании.
так
[ScalarSource(ScalarSourceType.ReturnValue)]
public abstract int? Create(T entity);
или так
[ScalarSource(ScalarSourceType.ReturnValue)]
public abstract bool Insert([Direction.Output("Id")] T entity);

PS: 1С-ников видно издалека...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.