【问题标题】:return all IQueryable with Entity framework使用实体框架返回所有 IQueryable
【发布时间】:2009-08-18 11:10:50
【问题描述】:

我刚从 Linq 切换到实体框架,我遇到了返回“所有行”的方法的问题。我得到:“类型'System.Data.Objects.DataClasses.EntityObject'是在一个未引用的程序集中定义的”错误在我的“服务层”调用数据层。

我收到一个错误:

BookingObjectRepository _repository = new BookingObjectRepository();

public IQueryable<BookingObject> GetBookingObjects()
{
    return _repository.GetBookingObjects();
}

在“数据层”我有:

BookingsystemEntities _entities = new BookingsystemEntities();

public IQueryable<BookingObject> GetBookingObjects()
    {
        return from bo in _entities.BookingObjectSet
               select bo;
    }

更新:过滤项目,它们“物理上”在过滤器文件夹中,但命名空间与 emdx 文件使用的相同。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; 

namespace BookingSystem.Data.Models
{

public static class BookingObjectFilters
{public static IQueryable<BookingObject> ByBookingObjectID(this IQueryable<BookingObject> qry, int bookingobjectID)
{
return from bo in qry
               where bo.BookingObjectID == bookingobjectID
               select bo;
}

【问题讨论】:

    标签: c# entity-framework


    【解决方案1】:

    您的系统必须安装 .NET 3.5 SP 1 或更高版本,并且您的项目必须引用 System.Data.Entity 程序集(查看解决方案中的引用节点探险家)。

    【讨论】:

      【解决方案2】:

      你有吗

      using System.Data;
      using System.Data.Objects.DataClasses;
      

      在你的使用中?

      public IQueryable GetBookingObjects() { return _repository.GetBookingObjects(); } 
      

      应该是

      public IQueryable<BookingObject> GetBookingObjects() { return _repository.GetBookingObjects(); } 
      

      希望对你有帮助,

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-06
      • 1970-01-01
      • 2011-06-02
      相关资源
      最近更新 更多