C# XML 问题,求助求助 急急急!!!

SeanAstin 2015-10-18 04:06:31
<ufinterface sender="945" receiver="" roottag="eb_trade" efserverid="999" eftype="98" docid="141140162" proc="Add" codeexchanged="n" exportneedexch="945" paginate="0" display="XXX" family="XXX" dynamicdate="12/12/2014" maxdataitems="20000" bignoreextenduserdefines="y" succeed="1" dsc="">
<eb_trade>
<header>
<created>2015-10-18 03:57:13</created>
<buyer_nick>02</buyer_nick>
<cShopCode>02</cShopCode>
<tid>test20151016</tid>
<title>241241234</title>
<receiver_name>张三</receiver_name>
<receiver_state>11</receiver_state>
<receiver_city>1101</receiver_city>
<receiver_district>110118</receiver_district>
<receiver_address>就在那里</receiver_address>
<receiver_zip>300000</receiver_zip>
<receiver_mobile>13866883546</receiver_mobile>
<isInvoice>1</isInvoice>
<receiver_phone />
<pay_time>2015-10-11 18:32:33</pay_time>
<buyer_message>test</buyer_message>
<invoice_name>241241234</invoice_name>
<cInvoiceCode>112111</cInvoiceCode>
<cExpressCoName>1</cExpressCoName>
</header>
<body>
<entry>
<title>201510110000000005-0000031872-00000000000000006230</title>
<num_iid>1100002320EA</num_iid>
<sku_id>1100002320EA</sku_id>
<num>1</num>
<price>0</price>
</entry>
<entry>
<title>201510110000000005-0000031872-00000000000000006230</title>
<num_iid>1100002320EA</num_iid>
<sku_id>1100002320EA</sku_id>
<num>1</num>
<price>0</price>
</entry>
</body>
</eb_trade>
</ufinterface>



这xml是根据json序列化生成的,<body></body>里的<entry></entry>也是根据商品个数而生成,一个商品就一个<entry>,多个商品就有多个<entry>!现在我想更具自动生成的<entry>里面增加两个默认标签 < isPostFee>0</isPostFee>和< isDiscount></isDiscount>应该怎么增加进去?因为<entry>是不固定的!!!
...全文
152 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
SeanAstin 2015-10-22
  • 打赏
  • 举报
回复
引用 4 楼 starfd 的回复:
XElement root = XElement.Parse(xml);
var eles = root.Element("body").Elements("entry");
foreach (XElement e in eles)
{
    e.Add(new XElement("isPostFee", 0), new XElement("isDiscount"));
}
虽然我用别的方式解决了,但是大神你真腻害!赞
全栈极简 2015-10-19
  • 打赏
  • 举报
回复
或者就当成xml文件的操作,直接添加节点,保存。
  • 打赏
  • 举报
回复
XElement root = XElement.Parse(xml);
var eles = root.Element("body").Elements("entry");
foreach (XElement e in eles)
{
    e.Add(new XElement("isPostFee", 0), new XElement("isDiscount"));
}
全栈极简 2015-10-19
  • 打赏
  • 举报
回复
其实就是对象的序列化与反序列化。 body标签下的entry,是一组数组, entry [] 。 定义一个对象,反序列化成对象后,再循环遍历entry ,添加isPostFee和isDiscount两个属性,最后再序列化即可。
Ny-6000 2015-10-18
  • 打赏
  • 举报
回复
<entry> 对象,添加2个属性喽.

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧