2009-05-20 77 views
3

我不想为我的应用创建单独的配置文件,但将数据存储在web.config中。有什么办法可以将配置文件添加到配置管理器不会解析的.config文件

我只想在那里放一些XML并手动解析它,因为ConfigurationManager的当前实现不适合我的情况。

但是,没有虚拟类和属性,我不能在没有得到配置错误的情况下添加我的XML:解析器错误消息:无法识别的元素XXXXX。即使我创建虚拟配置类,我也无法解决所有情况下的这个错误...

是否有任何方法来标记我的XML不被解析,以便我可以使用System.XML手动获取数据。

Thx。

+0

为什么你不想有一个单独的配置文件? – 2009-05-20 14:59:15

+0

我不想拥有多个配置文件。 – majkinetor 2009-05-20 15:14:46

回答

5

使用System.Configuration.IgnoreSectionHandler。

例子:

<configuration> 
    <configSections> 
    <section 
     name="myCustomSection" 
     type="System.Configuration.IgnoreSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
     allowLocation="false" /> 
    </configSections> 
... 
    <myCustomSection> 
    ... 
    </myCustomSection> 
... 
</configuration> 
0

我不认为你可以做到这一点 - 如果你在* .config文件中玩耍,你需要符合配置文件的XML模式 - 这意味着,你需要根据指定schema,如果是这种情况,ConfigurationManager将能够解析它们(并且会这样做)。

如果你需要额外的配置信息,不符合标准的.NET配置模式,你将不得不使用额外的,单独的配置文件 - 我没有看到任何其他方式,对不起。

马克

1

,如果你想将数据存储在您的.configs

www.codeproject.com/KB/cs/CustomConfigurationSectio.aspx

我建议创建一个自定义外形部分