gpt4 book ai didi

c# - SQL错误: connection string does not contain the required providerName attribute

转载 作者:行者123 更新时间:2023-11-30 16:09:05 27 4
gpt4 key购买 nike

我有一个首先使用 Entity Framework DB 的网站,我可以在我的本地计算机(开发计算机)上正常运行它。我有 edmx 文件和所有东西。

今天我将站点部署到 go daddy 并使用 MSSQL 创建了一个新的数据库。现在,当网站尝试访问数据库时,我收到一条错误消息:应用程序配置文件中的连接字符串“PCsTranformedEntities”不包含所需的 providerName 属性

此时我迷路了。提供者名称在连接字符串中不是有效的东西,我显然将它作为连接的一部分。这是我的网络配置的全部内容(当然没有我的登录信息)

<add name="PCsTranformedEntities" connectionString="metadata=res://*/SiteModel.csdl|res://*/SiteModel.ssdl|res://*/SiteModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=******;initial catalog=PCsTransformed;persist security info=True;user id=j***;password=***;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

我已经在谷歌上搜索过了:

Entity Framework: "ProviderName" in connection string required- all of the sudden?

The connection string 'MyConnection' in the application's configuration file does not contain the required providerName attribute."

http://www.sqlteam.com/forums/topic.asp?topic_id=179111

还有更多,但它们似乎指向我已经拥有的东西。我有提供者名称,这是当我从数据库创建模型时 Entity Frameowrk 创建的字符串。

我可以很好地从 sql server 2012 访问数据库,甚至可以在本地使用我的网站。

那么我在这里缺少什么?为什么它在我的本地计算机上运行良好,但在运行时却抛出错误?

最佳答案

查找了一段时间后发现错误。

错误来自 go daddy 更改 web 配置文件。

Go daddy 有一个功能,您可以点击 asp.net settings 来设置 CAS 级别。在此它还显示来自 Web 配置文件的连接字符串。

我必须将 CAS 更新为 Full 才能让我的网站正常工作,所以我在此处设置它,但似乎当您使用 go daddy 的 asp 设置页面更改任何内容时,它会覆盖 Web 配置并为您更改它。

这有利于设置 CAS 等,但当它还覆盖连接字符串并删除诸如提供程序名称之类的内容时就不好了。

基本上,当我更改 CAS 级别时,它也会更改我的连接字符串并在我不知情的情况下删除提供者名称属性。因此,如果您使用 go daddy 托管,请不要使用他们的界面。手动更改网络配置,然后将其上传到服务器。 :)

关于c# - SQL错误: connection string does not contain the required providerName attribute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28164374/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com