如何在不添加对包含完整EntityFramework模型的项目的引用的情况下将实体公开给Web项目?

时间:2013-01-04 17:26:54

标签: asp.net entity-framework web-applications

我正在使用EntityFramework 5(VS 2012)来解决这个问题。我的解决方案中有以下项目:

我首先使用数据库和设计师

  1. 数据。我的实体模型和实体在哪里。
  2. 安全。安全的业务逻辑在哪里。
  3. 网络。网络用户界面
  4. 安全性引用了 Data ,因此它可以使用模型和实体从数据库中检索数据。在安全性中,我有一个方法,它返回一个 MenuOptions 列表(这是项目Data中的一个实体)到UI(Web项目)。在Web项目中,我想迭代 MenuOptions 列表来构建菜单。问题是我不想在我的 Web 项目中添加对 Data 的引用,只是为了能够访问实体。那么,如何在不添加对完整项目的引用的情况下,使 Web 中的实体对 Web 可见? (我只希望UI可以访问实体。)

1 个答案:

答案 0 :(得分:1)

将dll(或项目)中的实体分开,将DbContext继承的类和实体映射配置放在另一个中。 这样,您可以在不共享数据库访问项的情况下在不同项目中分发实体dll。