使用.NET 反射机制(Reflecttion)读取和保存Xml配置文档
2012-02-11 11:49
656 查看
在.net中使用XmlDocument对xml进行读取和保存,就好象使用使用ADO.NET访问数据库一样需要编写大量的繁琐代码,现在开发数据库程序基本上都使用ORM框架简化工作,同样也可以类似的使用反射机制将XML配置文件转化为相应的对象,使用的使用直接调用对象就可以。
下面根据一个简单的实例说明下思路
<?xmlversion="1.0"encoding="utf-8"?>
<root>
<templates>
<templateid="100"name="模板1">
<headerfontname="宋体"fontsize="14"align="Left"content=""/>
</template>
<templateid="100">
<headerfontname="宋体"fontsize="14"align="Left"content=""/>
</template>
</templates>
</root>
上面是一个简单配置文件,根据这个XML的结构编写下面的相应对象
这样就在XML和对象之间建立了映射,最后创建一个通用的映射管理类负责读取XML文档转化为对象和在修改对象后将状态保存到XML文档中。
在这个处理过程中,主要是使用到了.net的反射机制(Reflection)和属性(Attribute)
下面根据一个简单的实例说明下思路
上面是一个简单配置文件,根据这个XML的结构编写下面的相应对象
[XmlFile("XXTemplate.xml","root","配置文件的名称")]
publicclassXXTemplate {
[XmlCollection(typeof(List<XXTemplateItem>),typeof(XXTemplateItem),"templates","")] publicList<XXTemplateItem>Templates{get;set;} }
[XmlItem(typeof(PrintTemplateItem),"template","")] publicclassXXTemplateItem {
[XmlProperty("id",typeof(string),"")] publicstringId{get;set;}
[XmlProperty("name",typeof(string),"")] publicstringName{get;set;}
[XmlItem(typeof(XXTemplateItemHeader),"header","")] publicXXTemplateItemHeaderHeader{get;set;} }
[XmlItem(typeof(XXTemplateItemHeader),"header","")] publicclassXXTemplateItemHeader {
[XmlProperty("fontname",typeof(string),"")] publicstringFontname{get;set;}
}
这样就在XML和对象之间建立了映射,最后创建一个通用的映射管理类负责读取XML文档转化为对象和在修改对象后将状态保存到XML文档中。
在这个处理过程中,主要是使用到了.net的反射机制(Reflection)和属性(Attribute)
相关文章推荐
- 在.NET中使用XML、读取XML文件,插入数据到XML文档中。
- 使用Spring中Src下 -context.xml : 用资源文件夹保存数据库的链接信息 并在配置文件里读取
- 在.NET中使用XML、读取XML文件,插入数据到XML文档中。
- 利用.Net的反射机制,完成一个自适应的程序配置保存类
- 在.NET环境下的XML应用简介(1)——使用XmlTextReader读取XML文档
- .NET:使用 XPATH 读取有 xmlns 属性的 XML 文档出现的问题
- java使用org.w3c.dom解析XML文档,创建、增删查改,保存,读取,遍历元素等操作
- 使用Redis保存Spring session(基于XML配置文件)
- Asp.net Core中使用Redis 来保存Session, 读取配置文件
- 使用sp_xml_preparedocument处理XML文档 保存到sqlserver中
- java使用dom4j解析xml配置文件实现抽象工厂反射示例
- 使用.NET读取XML文件,.net开发,.net,ASP.NET
- 使用xml作为数据库的配置文件的路径读取问题
- 使用dom4j框架,创建xml文档并输出保存
- 自己动手之使用反射和泛型,动态读取XML创建类实例并赋值
- .NET中反射机制的使用与分析
- 300.33通过读取配置文件方式来使用反射完成实例对象调用方法
- xml读取、保存不同类型打印配置的代码[原创]
- 数据库操作类与Xml文档操作(保存/读取Connectionstring)
- 在.net中使用强类型来读取配置信息