使用c#/.net 3.5加载XML并在需要时读取它的有效方法
本文关键字:读取 方法 有效 net XML 加载 使用 | 更新日期: 2023-09-27 18:04:55
我想知道如何有效地存储要在程序中使用的配置xml。我想在启动程序时立即将以下配置xml加载到内存中,然后在需要的地方使用属性。XML:
<ViewModelConfiguration>
<FICallSchedule>
<Model>
<Details>
<DataSource>
<Dataset se-datafilter="callschedule" dv-datamanipulationrequired="false" dv-filtercondition="" dv-sortcolumn="" dv-gettopNrows="" />
<XmlData></XmlData>
</DataSource>
<ComputePercentage isactive="true" dataorientation="horizontal">
<column source="value1" destination="value3" datafilter="" />
<column source="value2" destination="value4" datafilter="" />
</ComputePercentage>
</Details>
</Model>
</FICallSchedule>
</ViewModelConfiguration>
目前我正在阅读像<Dataset>
这样的主要标签,并在字典对象中加载它的所有属性。然后在代码中使用这个withkey字典。类似地,我也为ComputePercentage等等做了同样的事情。
我想知道我是否可以将完整的XML加载到一些对象中并访问每个节点或属性,例如:Model.Details.Dataset.DataSource.se-datafilter
或Model.Details.ComputePercentage
,这将返回列的集合。我不确定这是否有任何意义,否则我会坚持只使用字典对象。
如果配置文件有一些预定义的模式(这是理所当然的),您可以使用xsd工具根据该模式生成一个类。还有一个免费的xsd2code库可以做类似的事情。
但是你必须以某种方式定义你的Model
类;要么借助这些工具自动生成它,要么"手动"实现它。
使用configSection
和configElement
,这样元素和属性将被加载为对象,并且该配置可以存储到应用程序配置文件中