EF6查询存储过程

时间:2015-06-14 17:20:13

标签: c# sql sql-server entity-framework-6

我正在使用Entity Framework 6来调用名为AlarmTransPro的存储过程。该过程不接受任何输入参数,因为返回已在项目中的模型c#文件中声明的表:

public partial class AlarmTransPro_Result
{
    public Nullable<int> id { get; set; }
    public Nullable<double> data1 { get; set; }
    public Nullable<double> data1max { get; set; }
    public Nullable<double> data1min { get; set; }
    public Nullable<int> Transitioned { get; set; }
}

我知道过程逻辑和查询是通过它在sqlfiddle中的实现而单独工作的:sqlfiddle

当我实现此方法时:

var alarmview = alarms.Database.SqlQuery<AlarmTransPro_Result>("AlarmTransPro").ToList();

并在鼠标悬停时设置断点我得到Raw View count=0

如果我尝试使用.ToList()

var alarmview = alarms.Database.SqlQuery<AlarmTransPro_Result>("AlarmTransPro")

然后在鼠标悬停上我得到Non Public MembersResults ViewNon Public Members包含Internal Query,其中一个子字段为sql parameters,字符串为object{0}Results View表示

  

无法评估儿童

我觉得我很亲密,但我不确定是否:

  1. 我的查询方法是否正确?
  2. 我是否需要在查询中包含或更好地提供返回的参数?
  3. 工作正常,我的检查方法错了吗?

0 个答案:

没有答案