我试图从实体框架调用存储过程,但无法获取输出参数值。它总是返回 null。 这是我的代码
object[] parameters = {
new SqlParameter("@Date", date),
new SqlParameter("@outDate", SqlDbType.Date) {Direction= ParameterDirection.Output}
};
int defval = context.Database.CommandTimeout.Value;
context.Database.CommandTimeout = 1800;
context.Database.ExecuteSqlCommand("dbo.TestDateFormatAndRegion @Date, @outDate", parameters);
var NoOfSyncOperationsDeleted = parameters[1].ToString();
你能帮忙吗?
谢谢
在
context.Database.ExecuteSqlCommand
调用中,修改 SQL 命令以使用 EXEC
显式执行存储过程,并将 OUTPUT
添加到 @outDate
参数。
object[] parameters = {
new SqlParameter("@Date", date),
new SqlParameter("@outDate", SqlDbType.Date) { Direction = ParameterDirection.Output }
};
int defaultTimeout = context.Database.CommandTimeout.Value;
context.Database.SetCommandTimeout(1800);
context.Database.ExecuteSqlCommand("EXEC dbo.TestDateFormatAndRegion @Date, @outDate OUTPUT", parameters);
var outputParameter = parameters[1].Value;