我在存储过程中使用了@@ ROWCOUNT来获取所选行的数量,并正确返回受影响的行:
Select @RowCount = @@ROWCOUNT
我在C#中称之为sp,如下:
public IEnumerable<Model.Result> Search(out int totalRecords)
{
totalRecords = 0;
var RowCount = new System.Data.Entity.Core.Objects.ObjectParameter("RowCount", totalRecords.GetType());
var result = DB.Search(RowCount);
totalRecords = (int)RowCount.Value;
return result;
}
结果正确返回,但我不知道为什么RowCount.Value为空。
我该如何解决这个问题?
答案 0 :(得分:0)
RowCount只是一个ObjectParameter,您可以将其传递给对象查询或查询构建器方法。它并不意味着返回查询执行的任何结果,并且在编译查询之后,该值不能再被更改。因为您通过传递参数的类型而不是特定对象来创建它,所以Value被初始化为null并保持为空。