C#开发之XmlString与实体类对象的相互转换
来源:互联网 发布:pc机装mac 编辑:程序博客网 时间:2024/05/18 07:25
1.XmlString转化成实体类对象
XmlString转化成实体类对象即XML的解析并给实体类赋值。
比如,将XMl解析并生成Cost实体类:
public static object GetCosts(string xmlString) { Model.COSTS myCosts = new COSTS(); //Xml解析 XmlDocument doc = new XmlDocument(); doc.LoadXml(xmlString); XmlNodeList xxList = doc.GetElementsByTagName("Object"); //取得节点名为Object的集合 foreach(XmlNode xxNode in xxList) //xxNode 是每一个<CL>...</CL>体 { XmlNodeList childList = xxNode.ChildNodes; //取得CL下的子节点集合 foreach(XmlNode node in childList) { String temp = node.Name; switch(temp) { case "ID": //编码 myCosts.ID = node.InnerText; break; case "ITEM_CODE": //材料编码 myCosts.ITEM_CODE = node.InnerText; break; } } } return myCosts; }
附XMl样式如下:
<Objects><Object><ID>100</ID><ITEM_CODE>1</ITEM_CODE></Object></Objects>
2.实体类对象转化成XmlString
public static string ObjListToXml<T>(List<T> enitities) { StringBuilder sb = new StringBuilder(); PropertyInfo[] propinfos = null; //sb.AppendLine("<?xml version=\"1.0\" encoding=\"utf-8\"?>"); sb.AppendLine("<Objects>"); foreach (T obj in enitities) { //初始化propertyinfo if (propinfos == null) { Type objtype = obj.GetType(); propinfos = objtype.GetProperties(); } sb.AppendLine("<Object>"); foreach (PropertyInfo propinfo in propinfos) { sb.Append("<"); sb.Append(propinfo.Name); sb.Append(">"); sb.Append(propinfo.GetValue(obj, null)); sb.Append("</"); sb.Append(propinfo.Name); sb.AppendLine(">"); } sb.AppendLine("</Object>"); } sb.AppendLine("<Objects>"); return sb.ToString(); }
- C#开发之XmlString与实体类对象的相互转换
- Xqk.Data -- 一个数据表与实体类相互转换的C#数据开发框架
- C#之DataTable与实体集合相互转换
- java 实体类与xml之间的相互转换,利用XStream在Java对象和XML之间相互转换
- json与java实体类的相互转换
- json数据与实体类之间的相互转换
- c# 开发笔记之CSV与Datatble相互转换
- C# 中 json对象与字符串的相互转换
- c#中DataTable与实体集合相互转换
- C#对象与json相互转换
- C# 对象与JSON相互转换
- c# XML和实体类之间相互转换
- c# XML和实体类之间相互转换
- c# XML和实体类之间相互转换
- COM组件对象与.NET类对象的相互转换
- COM组件对象与.NET类对象的相互转换
- com组件对象与.net类对象的相互转换
- 实体与JSON的相互转换(简单类型)
- 声明必须初始化的---总结
- USB的编码方式
- cocos2d-x CCCallFunc系列函数的应用
- Oracle导入导出
- oracle insert 多行 select
- C#开发之XmlString与实体类对象的相互转换
- 第五章 表达式(part1) 算术、关系、逻辑、位、赋值
- 如何在没有万用表的情况下,辨别光敏与红外发射管
- Faststone不错
- 嫣然一笑苦了情
- SkipList 跳表
- logrotate
- 在vs中后台打印rdlc报表
- C#开发之生成XmlDocument用来返回错误提示信息