不支持直接绑定到商店查询(DbSet,DbQuery,DbSqlQuery,DbRawSqlQuery)的数据。不在那里加载

时间:2013-12-09 15:41:35

标签: c# asp.net entity-framework

我正在使用EF,我有以下代码,我试图从名为interface5toSSHIP的视图中获取行。 SQL Explorer显示数据库视图现在有一行。以下查询似乎没有返回它。我做错了什么?

IEnumerable<interface5toSSHIP> i5;
            using (RREM_GilbaneEntities3 entities3 = new RREM_GilbaneEntities3())
            {
                i5 = from i in entities3.interface5toSSHIP
                select i;
            }

然后当我尝试DataBind时,我得到标题错误:

grdvwInterface5ReadyToSend.DataSource = i5;
            grdvwInterface5ReadyToSend.AllowPaging = true;
            grdvwInterface5ReadyToSend.AllowSorting = true;
            grdvwInterface5ReadyToSend.DataBind();

问题是我找不到怎么做Load。我查了一个这样的例子:

IntranetModelContainer db = new IntranetModelContainer();
      db.Entities.OfType<Employee>().Load();
      return db.Entities.Local.OfType<Employee>();

我添加了对System.Data.Entity的引用,我找不到我的entities3或LOAD方法的.Entities。我该怎么做?

2 个答案:

答案 0 :(得分:9)

我通过调用ToList()方法解决了它。

答案 1 :(得分:0)

ToList()可能太慢,因为它会尝试获取所有属性(get {})并解析与之相关的其他对象。一个快速的方法可以是:

yourLinq.AsQueryable()