Я пытаюсь прочитать значение параметров OUT, возвращаемое хранимой процедурой, но выдает ошибку DBNULL . Даже процедура возвращает значение.
Код:
int? outParam= 0;
SqlParameter sqlParam= new SqlParameter("@model", user.Name+" Model");
SqlParameter sqlParamOut = new SqlParameter("out", outParam);
sqlParamOut.DbType = System.Data.DbType.Int32;
sqlParamOut.Direction = System.Data.ParameterDirection.Output;
UsersPhonesDBContext.Database.ExecuteSqlCommand("dbo.InsertPhones @model, @out", sqlParam, sqlParamOut);
outParam = Convert.ToInt32(sqlParamOut.Value);
SP:
alter PROCEDURE InsertPhones (
@model varchar(100),
@out int output
)
AS
BEGIN
Insert into Phones (Model, Manufacturer)
Values
(
@model,
'Hunain Phone'
)
set @out= SCOPE_IDENTITY();
Select @out
END
GO