【问题标题】:Is it possible to read XML using System.Configuration是否可以使用 System.Configuration 读取 XML
【发布时间】:2014-11-20 19:52:45
【问题描述】:

目前我正在使用XElement 解析XML 并读取应用程序所需的每个节点。

现在我想通过使用System.Configuration 来读取XML。这可能吗,我的想法。我的config.xml 没有任何configuration section。它只是简单的XML

<?xml version="1.0" encoding="utf-8" ?>
<ConfigSetting>
<!--The reports name which needs to be changed in to tethystrader db created on the fly.-->
<ReportsName value="Tethys_Price_report,Tethys_Liquidity_report,Tethys_Liquidity_report_option"/>

<MasterConnectionSetting connectionString="Data Source=NDI-LAP-262\SQL2008R2;Initial Catalog=master;UID=sa;pwd=Brick@123;" />
<!--Create db for check Liquidityreport/execta daily scenario-->
<Setup scenario="LIQ" outputFilePath="..\..\..\..\..\..\Branch_3.2.5">
    <ServerSetting>
        <ConnectionSetting component="RGTestToolDB" connectionString="server=NDI-LAP-262\SQL2008R2;integrated security=SSPI;uid=sa;pwd=Brick@123;database=~;Connection Timeout=1;" />
        <ConnectionSetting component="TethysTrader" connectionString="server=NDI-LAP-262\SQL2008R2;integrated security=SSPI;uid=sa;pwd=Brick@123;database=~;Connection Timeout=1;" />
        <ConnectionSetting component="TethysCommonDB" connectionString="server=NDI-LAP-262\SQL2008R2;integrated security=SSPI;uid=sa;pwd=Brick@123;database=~;Connection Timeout=1;" />      

    </ServerSetting>

    <DB component="TethysTrader">
        <cabfile path="Output\TethysTrader.cab" />
        <cabfile path="Output\TethysTrader-RG.cab" />
        <object  tablename="order_msgs" file="TethysTraderDB\order_msgs.csv" />
        <object  tablename="order_msgs_incoming" file="TethysTraderDB\order_msgs_incoming.csv" />
    </DB>

</Setup>

</ConfigSetting>

请提出建议。

【问题讨论】:

    标签: c# xml system.configuration


    【解决方案1】:

    因为这不是一个有效的配置文件(它不包含&lt;configurationSettings&gt; 元素,也不包含描述未知部分的&lt;configSections&gt; 元素)您无法通过System.Configuration 阅读它。通过将所有这些数据移动到自定义配置部分来更好地实现您想要的效果(有关如何执行此操作的更多信息,请参阅the MSDN - 该页面讨论了 ASP.NET,但它在 ASP.NET 之外工作,就像好)或将此数据保存在您使用 XElement 解析的单独文件中(该解决方案没有任何问题)。

    使用自定义配置部分的好处是您可以保留一个app.config,这样更易​​于维护和部署。您还可以从 .NET 配置文件的内置优势中受益,例如能够拥有每台机器和每用户的文件来提供默认值。缺点是您需要为它编写单独的代码(并且理解它是如何工作的并不是一件容易的事)。

    将数据保存在您自己解析的单独文件中更容易理解,但您无法获得对机器或用户特定文件的支持,如果您需要一些设置,则必须部署和维护两个文件在app.config 无论如何。

    【讨论】:

    • 意味着根据您的建议,我目前的流程更准确、更有用。两者都有什么利弊。
    猜你喜欢
    • 2012-01-28
    • 2015-03-19
    • 2011-06-29
    • 1970-01-01
    • 2010-11-05
    • 2017-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多