在哪里可以找到IIS管理器连接字符串的位置

时间:2017-10-03 13:53:24

标签: c# asp.net .net iis

我收到一条错误消息,说我的应用程序的web.config文件中的一个连接字符串已经定义。

我检查了IIS设置,当我检查连接字符串属性时,它已经存在条目类型:继承。

所以我上了链,一直走到localhost的根目录,检查了那里的连接字符串。

我在那里找到了一堆连接字符串..但是他们也都是Entry Type Inherited ..

我检查了wwwroot文件夹中的web.config文件,但没有找到在那里定义的任何连接字符串..

这些连接字符串可以来自何处?...

enter image description here

1 个答案:

答案 0 :(得分:2)

.NET中的配置文件按以下顺序继承:

  • systemroot\Microsoft .NET\Framework\versionNumber\CONFIG\Machine.config
  • systemroot\Microsoft .NET\Framework\versionNumber\CONFIG\Web.config(仅限ASP.NET)
  • (application directory)\Web.config

因此,显示为“inherited”的连接字符串在上面两个文件中指定。

参考:MSDN: ASP.NET Configuration File Hierarchy and Inheritance

如果您不想更改机器范围的配置,可以<clear />在应用程序的配置中继承它们,如What does <clear /> signify when specifying a connectionstring?中所述:

<connectionStrings>
   <clear />
   <add name="LocalSqlServer" connectionString="..." /> 
</connectionStrings>