【发布时间】:2023-03-18 15:38:01
【问题描述】:
对于一个学校项目,我正在构建一个必须拆分为多个项目的应用程序。
将创建的项目是类库、wcf 服务和 asp.net MVC4 应用程序。
类库将是状态库、无状态库和数据逻辑库。
理想的实体框架应该在datalogic库中,生成的模型应该放在状态库中,无状态的类包含保存这些模型的静态方法。
但是,我似乎无法将 Entity Framework (v5) 生成的模型导入另一个类库 (State)。有没有办法做到这一点?还是我想错了,我应该使用其他架构吗?
这个问题解决了: Entity Framework 5 and Visual Studio 2012 POCO Classes in Different Project
仍然欢迎提供有关架构的建议:
如果我的结构被证明是错误的或效率不如建议的那样,我愿意改变这种结构。
(我可能需要提供的其他信息是 WCF 服务将通过无状态库的方法,而 ASP.Net MVC4 应用程序正在使用这些方法来获取模型和一些控制器功能)
【问题讨论】:
-
您是否根据需要添加对各种项目的引用?
-
我们做了类似的事情,但使用 CodeFirst EF 而不是 db/modelfirst
-
您在使用 EF DbContext POCO 生成器吗?然后在不同的程序集中拥有 .edmx 上下文和 poco 模型是相当直接的 - msdn.microsoft.com/en-US/data/jj206878
-
拥有数据库并不妨碍您使用 codefirst。我个人基于数据库手工制作 POCO 类,如果我想在模型中以不同方式表示它,则使用模型构建器。但是,您也可以使用 CodeFirst 生成器从现有数据库生成 codefirst 模型。
-
首先使用数据库或代码优先是一个偏好问题,在 IMO 中并不是真正的问题。正如@NeilThompson 建议的那样,使用 POCO 应该可以轻松分离模型和上下文
标签: c# wcf entity-framework asp.net-mvc-4