我应该在另一个命名空间中使用实体框架 DBContext 的部分类吗
Posted
技术标签:
【中文标题】我应该在另一个命名空间中使用实体框架 DBContext 的部分类吗【英文标题】:Should I use a partial class for Entity Framework DBContext in another namespace 【发布时间】:2013-06-25 08:56:22 【问题描述】:我的解决方案中有两个项目:
项目 1:主 Web 项目(命名空间:MVCWebsite)[大] 项目2:Daemon项目(用于计划任务)(命名空间:MVCDaemon)[small] [justcodingnow]
项目 1 有一个 EF DBContext,项目 2 将有 EF 集合(在相同的上下文中,因为它使用项目 1 的集合)。
构建这个的最佳方式是什么?
我是否应该在项目 2 中有一个与项目 1 具有相同命名空间的类,并使用项目 1 的 DBContext 的部分类。
E.G,项目 1:
namespace MVCWebsite.Models
public partial class BaseDBContext : DbContext
&项目2:
namespace MVCWebsite.Models
public partial class BaseDBContext : DbContext
I.E 在项目中拥有 namespace.class 文件绝对是不合时宜的,因此正常的命名空间是另外一回事!!
这是一件可怕/危险的事情吗?有没有更好的方法来构建这个?
【问题讨论】:
【参考方案1】:所有部分类代码文件必须位于同一个程序集中。
希望这能让你更容易做出决定。
更好的解决方案是创建第三个项目,其中包含 DBContext 类的完整定义以及从 Daemon 项目和 Web 项目引用的所有集合。
【讨论】:
嗯,此刻,它们在不同的程序集中。但它似乎编译得很好......以上是关于我应该在另一个命名空间中使用实体框架 DBContext 的部分类吗的主要内容,如果未能解决你的问题,请参考以下文章