为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用XML属性指定另一个XML名称?

如何使用XML属性指定另一个XML名称?

C#
翻过高山走不出你 2021-03-30 13:15:02
我有这个XML:<?xml version="1.0" encoding="UTF-8"?><doc>   <id>19</id>   <name>Name is here</name>   <note>leader-it test user</note>   <list name="products">      <elem>         <id>2537</id>         <name>Product #2537</name>         <status>Deleted</status>         <cost>1.00</cost>      </elem>      <elem>         <id>2541</id>         <name>Product #2541</name>         <status>Active</status>         <cost>1.00</cost>      </elem>   </list>   <list name="balance">      <elem>         <id>19</id>         <project>Project 15</project>         <balance>108046.1716</balance>      </elem>   </list>   <label />   <country>182</country></doc>我正在尝试反序列化var account = XmlHelper.ParseXml<Account>(xml_string);public static class XmlHelper{    public class NamespaceIgnorantXmlTextReader : XmlTextReader    {         public NamespaceIgnorantXmlTextReader(TextReader reader) : base(reader) { }         public override string NamespaceURI        {            get { return String.Empty; }        }    }    public static T ParseXml<T>(string xml)    {        try        {            var serializer = new XmlSerializer(typeof(T));            using (var reader = new StringReader(xml))            {                using (var xmlTextReader = new NamespaceIgnorantXmlTextReader(reader))                {                    return (T)(serializer.Deserialize(xmlTextReader));                }            }        }        catch (Exception e)        {            return default(T);        }    }}使用这些类:[XmlRoot(ElementName = "doc")]public class Account{    [XmlElement("id")]    public int Id { get; set; }    [XmlElement("name")]    public string Name { get; set; }    [XmlElement("note")]    public string Note { get; set; }我遇到了这个错误:当前作用域中已经存在来自名称空间“”的XML元素“列表”。使用XML属性为元素指定另一个XML名称或名称空间。如何使用XML属性指定另一个XML名称?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 141 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号