首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

如果读取app.config的内容,该如何处理

2012-01-26 
如果读取app.config的内容 读取代码如下System.Configuration.ConfigurationconfigConfigurationManager.

如果读取app.config的内容

读取代码如下
    System.Configuration.Configuration   config   =
                                        ConfigurationManager.OpenExeConfiguration(
                                        ConfigurationUserLevel.None);
ConfigurationSection   cs   =   config.GetSection( "applicationSettings ");

结果cs   返回null,
但是用config.GetSection( "connectionStrings ");却可以


app.config的内容如下
<?xml   version= "1.0 "   encoding= "utf-8 "   ?>
<configuration>
        <configSections>
                <sectionGroup   name= "applicationSettings "   type= "System.Configuration.ApplicationSettingsGroup,   System,   Version=2.0.0.0,   Culture=neutral,   PublicKeyToken=b77a5c561934e089 "   >
                        <section   name= "Test_ado.Properties.Settings "   type= "System.Configuration.ClientSettingsSection,   System,   Version=2.0.0.0,   Culture=neutral,   PublicKeyToken=b77a5c561934e089 "   requirePermission= "false "   />
                </sectionGroup>
        </configSections>
        <connectionStrings>
                <add   name= "northwindbysql "   connectionString= "Data   Source=lisong;Initial   Catalog=Northwind;User   ID=sa "
                        providerName= "System.Data.SqlClient "   />
                <add   name= "northwindbywindow "   connectionString= "Data   Source=localhost;Initial   Catalog=Northwind;Integrated   Security=True "
                        providerName= "System.Data.SqlClient "   />
                <add   name= "Test_ado.Properties.Settings.mydbstring "   connectionString= "Data   Source=lisong;Initial   Catalog=Northwind;User   ID=sa "
                        providerName= "System.Data.SqlClient "   />
        </connectionStrings>
        <applicationSettings>
                <Test_ado.Properties.Settings>
                        <setting   name= "myDB "   serializeAs= "String ">
                                <value> northwind </value>
                        </setting>
                </Test_ado.Properties.Settings>
        </applicationSettings>    


</configuration>

[解决办法]
applicationSettings没有值可以取,你是不是要取里边的myDB?

Configuration config = WebConfigurationManager.OpenWebConfiguration( "/ ", "localhost ");
string value = config.AppSettings.Settings[ "myDB "].value;
[解决办法]
<applicationSettings>
<Test_ado.Properties.Settings>
<setting name= "myDB " serializeAs= "String ">
<value> northwind </value>
</setting>
</Test_ado.Properties.Settings>
</applicationSettings>
这个是不符合app.config内容的规范的
不能使用Configuration 或者 ConfigurationManager类来操作.
楼主要取的话 只能用读取 xml节点的方式
[解决办法]
config.AppSettings.Settings[标示].value
[解决办法]
直接改成
<appSettings>
<add key= "myDB " value= "northwind " />
</appSettings>

System.Configuration.ConfigurationManager.AppSettings[ "myDB "];

热点排行