xml转实体类的实现
1、定义方法
public static T DESerializerStringToEntity<T>(string strXML) where T : class { try { using (StringReader sr = new StringReader(strXML)) { XmlSerializer serializer = new XmlSerializer(typeof(T)); return serializer.Deserialize(sr) as T; } } catch (Exception ex) { return null; } }
2、xml内容如下:
<request> <Id>11</Id> <Name>科技集团</Name> <Employees> <Employee> <Id>22</Id> <Name>张三</Name> </Employee> <Employee> <Id>22</Id> <Name>张三</Name> </Employee> </Employees> </request>
3、实体类如下:
[Serializable] [XmlRoot("request")] public class Company { public int Id { get; set; } public string Name { get; set; } [XmlArray("Employees"), XmlArrayItem("Employee")] public List<Employee> Employees { get; set; } } [XmlRoot(ElementName = "Employee")] public class Employee { public int Id { get; set; } public string Name { get; set; } }
4、调用
static void Main(string[] args) { string strXml = "<request><Id>11</Id><Name>科技集团</Name><Employees><Employee><Id>22</Id><Name>张三</Name></Employee><Employee><Id>22</Id><Name>张三</Name></Employee></Employees></request>"; Company Com = DESerializerStringToEntity<Company>(strXml); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?