我正在查看一个自定义构建的 .NET 控件 (vb)。它有一个公共字符串声明为:
Public Shared strConn As String = ConfigurationSettings.AppSettings("TheDB")
我试图找出“TheDB”应该是什么。我使用这个自定义控件查看了网站的 web.config 文件,但是任何地方都没有“TheDB”参数。我还查看了 Web 服务器的 machine.config 文件,同样,那里也没有“TheDB”参数。
帮助。
我正在查看一个自定义构建的 .NET 控件 (vb)。它有一个公共字符串声明为:
Public Shared strConn As String = ConfigurationSettings.AppSettings("TheDB")
我试图找出“TheDB”应该是什么。我使用这个自定义控件查看了网站的 web.config 文件,但是任何地方都没有“TheDB”参数。我还查看了 Web 服务器的 machine.config 文件,同样,那里也没有“TheDB”参数。
帮助。
如果缺少,只需添加它:
<appSettings>
<add key="TheDB" value="somevalue" />
</appSettings>
(假设它ConfigurationSettings.AppSettings
确实对应于.appSettings
的部分web.config
。这不清楚,因为通常您使用内置ConfigurationManager
类引用配置文件的标准部分)
查看您的 web.config。在某处有一个名为“AppSettings”的部分,其中应该有一些看起来像这样的元素:
<add key="TheDB" value="something" />
其中之一将是你的。或者可能有人把它拿出来了。不过,它很可能是您的数据库的连接字符串。
web.config 是分层的。每个 web.config 将配置信息提供给它所在的目录以及它下面的整个目录层次结构。
http://msdn.microsoft.com/en-us/library/ms178685.aspx
从 .Net v1.1 开始就是这样。当您查找配置值或部分时,.Net 配置系统会在最低级别的 web.config 中查找。如果未找到所需的值,它将沿目录树向上运行,直到找到为止。
您需要运行目录层次结构(是的,其中还包括安装在 IIS 中的虚拟目录),直到找到包含所需 appsetting 值的 web.config 文件。还有 IIS ApplicationHost.config
,位于
%windir%\system32\inetsrv\config