将实体框架 EDMX 类移动到单独的数据层 DLL 中
本文关键字:数据 DLL 单独 框架 实体 EDMX 移动 | 更新日期: 2023-09-27 18:31:49
我已经开始研究实体框架。以前,在使用数据访问时,我总是尝试将其保存在单独的 DLL 中,试图分离我的担忧并防止将数据模型类拖入表示层。
现在,当我创建 EDMX 文件时,它会进入主项目,当我将它们和关联的代码移动到数据 DLL 中时,当我运行解决方案时编译时,实体构造函数或 ObjectContext 类中的基构造函数中抛出错误。
是否有可能实现这种完全分离?
我看到了这个问题,它似乎是相关的,但阅读评论似乎只有部分分离。
编辑这是我得到的错误:
Unable to load the specified metadata resource.
我已经找到了这个答案,所以我看看这是否能解决我的问题。
只需在另一个程序集中重新创建 edmx 文件,而不是复制它。只需知道,使用该程序集的任何程序集/程序都需要使其应用程序或 Web 配置文件包含数据库连接字符串,该字符串与在 edmx 的应用程序配置文件中创建的名称相同。
将数据访问 EF 文件保存在单独的程序集中或位于 Web 服务后面的情况并不少见。尽管是否允许直接公开POCO(模型)是一个偏好问题。