Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# .NET配置设置.AppSettings(“TheDB”)_C#_.net_Vb.net_Web Config_Machine.config - Fatal编程技术网

C# .NET配置设置.AppSettings(“TheDB”)

C# .NET配置设置.AppSettings(“TheDB”),c#,.net,vb.net,web-config,machine.config,C#,.net,Vb.net,Web Config,Machine.config,我正在看一个定制的.NET控件(vb)。它的公共字符串声明为: Public Shared strConn As String = ConfigurationSettings.AppSettings("TheDB") 我想知道“TheDB”到底应该是什么。 我使用这个自定义控件查看了网站的web.config文件,但是没有“TheDB”参数。我还查看了web服务器的machine.config文件,同样,这里也没有“TheDB”参数 帮助。如果缺少,只需添加: <appSettings

我正在看一个定制的.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
确实对应于
web.config
AppSettings
部分。这并不清楚,因为您通常使用内置
ConfigurationManager
类引用配置文件的标准部分)

如果缺少它,只需添加它:

 <appSettings>
     <add key="TheDB" value="somevalue" />
 </appSettings>


(假设
ConfigurationSettings.AppSettings
确实对应于
web.config
AppSettings
部分。这并不清楚,因为您通常使用内置
ConfigurationManager
类引用配置文件的标准部分)

查看您的web.config。在其中的某个地方有一个名为“AppSettings”的部分,其中应该有一些元素如下所示:


其中一个是你的。或者可能有人把它拿出来了。不过,很可能是数据库的连接字符串。

查看web.config。在其中的某个地方有一个名为“AppSettings”的部分,其中应该有一些元素如下所示:


其中一个是你的。或者可能有人把它拿出来了。不过,很可能是数据库的连接字符串。

web.config是分层的。每个web.config都向其所在的目录及其下的整个目录层次结构提供配置信息

从.NETV1.1开始就是这样。当您查找配置值或节时,.Net配置系统将查找最低级别的web.config。如果未找到所需的值,它将在目录树上运行,直到找到为止

您需要运行目录层次结构(是的,也包括IIS中装载的虚拟目录),直到找到包含所需appsetting值的web.config文件。还有IIS
ApplicationHost.config
,位于

%windir%\system32\inetsrv\config

web.config是分层的。每个web.config都向其所在的目录及其下的整个目录层次结构提供配置信息

从.NETV1.1开始就是这样。当您查找配置值或节时,.Net配置系统将查找最低级别的web.config。如果未找到所需的值,它将在目录树上运行,直到找到为止

您需要运行目录层次结构(是的,也包括IIS中装载的虚拟目录),直到找到包含所需appsetting值的web.config文件。还有IIS
ApplicationHost.config
,位于

%windir%\system32\inetsrv\config

TheDB应该是控件在数据库中使用的连接字符串。它应该在web.config的下。如果不存在,请查看appSettings是否具有ConfigSource属性(如是),然后查找在ConfigSource中指定的文件。DB应该是控件在数据库中使用的连接字符串。它应该在web.config的下。如果不存在,请查看appSettings是否具有ConfigSource属性(如是),然后查找ConfigSource中指定的文件,该文件也是一个内置类。只是贬值了,没错。如果您没有在.config文件中定义密钥,应用程序将默认为编译时配置的值。@PhillipSchmidt:我已经签出了,非常感谢您的提醒。@WiktorZychla我只知道这一点,因为我以前工作的公司似乎编写代码就像1995年一样。配置设置、布局表等@PhillipSchmidt:我从2002年开始使用.NET,我一定一直在使用该类。然而,我已经习惯了
ConfigurationManager
,现在我已经完全忘记了
ConfigurationSettings
(因此我认为它可能是一个自定义类)。这也是一个内置类。只是贬值了,没错。如果您没有在.config文件中定义密钥,应用程序将默认为编译时配置的值。@PhillipSchmidt:我已经签出了,非常感谢您的提醒。@WiktorZychla我只知道这一点,因为我以前工作的公司似乎编写代码就像1995年一样。配置设置、布局表等@PhillipSchmidt:我从2002年开始使用.NET,我一定一直在使用该类。然而,我已经习惯了
ConfigurationManager
,现在我已经完全忘记了
ConfigurationSettings
(因此我认为它可能是一个自定义类)。