在mvc 3中的三层体系结构中获取数据库连接错误

时间:2012-10-02 06:42:10

标签: c# asp.net-mvc 3-tier

我正在尝试使用mvc 3实现基本的三层体系结构,但在运行解决方案时遇到错误(在构建解决方案时没有显示错误)。组织我的项目&可以在附加图像中看到错误消息。enter image description here

请帮忙。

好的伙计们,这是对。

的更新

正如一些评论所指出的,我将原始连接字符串从app.config复制到我的web.config文件&得到此错误,如图所示。 enter image description here

我试图搜索很多,但没有任何线索!任何帮助都将被高度挪用。

4 个答案:

答案 0 :(得分:1)

您复制的连接字符串是普通连接字符串。您正在使用edmx文件,这意味着您需要一个实体连接字符串。

您需要将entity-connectionstring复制到web.config中。您可以在数据层中的app.config文件中找到EF-connectionstring,其中EF为您添加了它。

答案 1 :(得分:1)

@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=&quot;data source=.\sqlexpress;initial catalog=Northwind;persist security info=True;user id=sa;password=Blister01;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

不要复制粘贴它,它只是一个示例

答案 2 :(得分:0)

您只需在演示文稿图层中的connectionStrings中添加连接字符串web.config部分!

See this image

答案 3 :(得分:0)

编辑:试试这个

<add name="NORTHWINDEntities" providerName="System.Data.SqlClient" connectionString="data source=(local)/sqlexpress; initial catalog=NORTHWND;Integrated Security=SSPI" />