我正在尝试使用 mvc 3 实现基本的三层架构。但是在运行解决方案时出现错误(在构建解决方案时没有显示错误)。我的项目组织和错误消息可以在附图中看到。
请帮忙。
好的,伙计们,这是一个更新。
正如一些评论所指定的,我将原始连接字符串从 app.config 复制到了我的 web.config 文件并得到了这个错误,如图所示。
我试图搜索很多,但没有任何线索!任何帮助都将得到高度利用。
我正在尝试使用 mvc 3 实现基本的三层架构。但是在运行解决方案时出现错误(在构建解决方案时没有显示错误)。我的项目组织和错误消息可以在附图中看到。
请帮忙。
好的,伙计们,这是一个更新。
正如一些评论所指定的,我将原始连接字符串从 app.config 复制到了我的 web.config 文件并得到了这个错误,如图所示。
我试图搜索很多,但没有任何线索!任何帮助都将得到高度利用。
您复制的连接字符串是普通的连接字符串。您正在使用 edmx 文件,这意味着您需要一个实体连接字符串。
您需要将实体连接字符串复制到 web.config 中。您可以在 EF 为您添加的数据层的 app.config 文件中找到 EF-connectionstring。
@Maarten 是对的。您总是复制正常的连接字符串(这是实体连接字符串的一部分)。您需要复制在数据层的App.config文件中生成的整个连接字符串,并将其粘贴到表示层的web.config文件中。实体连接字符串,如:
<add name="NorthwindEntities" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string="data source=.\sqlexpress;initial catalog=Northwind;persist security info=True;user id=sa;password=Blister01;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
不要复制粘贴它,它只是一个示例
您只需在表示层中添加连接字符串connectionStrings
部分!web.config
编辑:试试这个
<add name="NORTHWINDEntities" providerName="System.Data.SqlClient" connectionString="data source=(local)/sqlexpress; initial catalog=NORTHWND;Integrated Security=SSPI" />