【问题标题】:How to connect ASP.NET config to SQL Server instead of SQL Server Express?如何将 ASP.NET 配置连接到 SQL Server 而不是 SQL Server Express?
【发布时间】:2015-01-21 15:26:47
【问题描述】:

我使用 aspnet_regsql.exe 配置了我的 SQL Server 数据库。一切都很好。然后我在web.config 文件中添加了新的连接字符串:

<connectionStrings>
   <clear />
   <remove name="LocalSqlServer" />
   <add name="SQLConnectionString" 
        connectionString="Provider=ProvName;Server=Sname;Database=dbName;Uid=user; Pwd=pWord" />
</connectionStrings>

当我尝试从网站访问数据库时出现错误:

配置错误
说明:处理服务此请求所需的配置文件期间发生错误。请查看下面的具体错误详细信息并适当修改您的配置文件。
解析器错误消息:在应用程序配置中未找到连接名称“LocalSqlServer”或连接字符串为空。

来源错误:

我正在通过 Visual Studio 10 在 IIS 上运行此站点。知道我缺少哪些步骤吗?

【问题讨论】:

  • 在我看来,您正在寻找一个名为 'LocalSqlServer' 的连接字符串,但 .config 文件中没有。

标签: c# asp.net sql-server iis web


【解决方案1】:
<add name="LocalSqlServer" connectionString="Data Source=.;Initial Catalog=DBName;Uid=user;Pwd=pWord" provider="System.Data.SqlClient"/>

上面的方法应该可以工作。

【讨论】:

  • 它应该是 providerName="System.Data.SqlClient 但这有效!
  • 糟糕错字...是的,它应该是 providerName
【解决方案2】:

您的代码正在寻找一个名为“LocalSqlServer”的连接字符串,但您正在添加一个名为“SQLConnectionString”的连接字符串。

将其更改为:

&lt;add name="LocalSqlServer" connectionString="Provider=ProvName;Server=Sname;Database=dbName;Uid=user; Pwd=pWord" /&gt;

【讨论】:

  • 这可能也有效,但它现在有效,我不想碰它。感谢您的帮助!
【解决方案3】:

在所有配置和代码 (.cs?) 文件中搜索短语“LocalSqlServer”。它在其他地方被引用......不仅仅是连接字符串配置区域。

“name”属性在代码的其他地方用于查找实际的连接字符串。

我喜欢特工 Ransack 在文件中查找特定字符串。

当您找到其他参考时,您可以将其替换为“MySuperSpecialConnectionStringName”(如下所示,您的原始代码的更改)。

【讨论】:

    猜你喜欢
    • 2011-07-02
    • 2020-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-08
    • 1970-01-01
    相关资源
    最近更新 更多