Я использую Entity Framework 4.1 и иногда мне нужно вызывать хранимые процедуры.Некоторые из этих возвращаемых значений в качестве возвращаемых значений.Например,
CREATE PROCEDURE ...
...
INSERT INTO ...
SELECT @@Identity
( Обновление : удаленное возвращаемое значение не имеет значения. Мы возвращаем идентификатор)
У меня есть следующий код в моем классе репозитория:
var orderNo = context.Database.SqlQuery<int>("EXEC myProc").Single();
Это не происходит с сообщением об ошибке The specified cast from a materialized 'System.Decimal' type to the 'System.Int32' type is not valid.
Если я изменяю код выше на
var orderNo = context.Database.SqlQuery<decimal>("EXEC myProc").Single();
, все работает.
Теперь я думаю, что я смогу вернуть int.Как правильно это сделать?