决定重新创建一个网站,以便它是一个ASP.NET MVC Web应用程序。我们最初使用实体框架,因为它工作得很好,所以仍然使用它。在做一些阅读时,注意到没有用于MVC应用程序的App_Code /文件夹,并且大多数人都在为他们的需求创建类库。所以我最终做的是在同一个解决方案中创建我的MVC应用程序和类库,MVC应用程序引用了类库。类库中有我的EDMX实体数据模型文件,因为我的一些类引用它,我认为将它放在库中引用是最容易的。所以我的解决方案布局是here is a picture。但是当我构建并运行网站时,我在一个引用实体数据模型的页面上出现错误。 Here is a picture错误是什么。
所以我想,如果我把EDMX放到我的模型文件夹中会怎么样,因为错误看起来像是在抱怨找不到实体。我的解决方案Here's a picture现在已经采取行动了。但是现在,我得到了一个不同的错误(picture)。我有点不知道从哪里开始。我是否已经将所有内容布置出来并设计出适当且最有效的方式来实现它?如果不是,有人可以给我一些建议吗?
谢谢,非常感谢!
答案 0 :(得分:2)
是的,您应该能够将edmx放在类库中,并从主项目中引用。第一个错误可能是由于连接字符串不正确(请检查此blog post),但您也可能以某种方式更改了edmx文件的构建操作,请确保它是“Entity Deploy”。
第二个错误可能是因为您将edmx从类库复制到Models文件夹中,它仍然引用旧的命名空间。要解决此问题,请在设计器视图中打开edmx,然后单击背景。属性窗口中的一个属性是命名空间,请确保将其设置为要保留它的新位置。
修改强> 有些事要尝试:
IEnumerable<URGLibrary.Proposal>