Xml-C#我不能为元素设置一个值

时间:2015-03-11 15:50:01

标签: c# xml linq-to-xml

XElement service = doc.Element("Ids");
service.Add(new XElement("ID", idulong.ToString(),new XElement("Succesfull",1)));

示例输出

<ID>
9223372036854775808
<Succesfull>1</Succesfull>
</ID>`

我想要

<Ids Userid= 9223372036854775808>  
<Succesfull>1</Succesfull>
</Ids>

每个用户的ID都不同。我希望检查具有ID的用户。

3 个答案:

答案 0 :(得分:1)

查看您的代码只是已更改以显示嵌套级别:

service.Add(new XElement("ID",
                         idulong.ToString(),
                         new XElement("Succesfull",
                                      1)));

换句话说,Succesfull元素在ID元素构造函数调用中。

您只想添加两个单独的元素,或者对service.Add进行两次单独调用:

service.Add(new XElement("ID", idulong.ToString());
service.Add(new XElement("Succesfull", 1));

或在Add的一次调用中,采用多个元素:

service.Add(new XElement("ID", idulong.ToString()),
            new XElement("Succesfull", 1));

顺便说一下,你不需要拨打ToString - 写得不错:

service.Add(new XElement("ID", idulong),
            new XElement("Succesfull", 1));

(您可能希望使用Successful或仅使用Success代替Succesfull,但是......)

答案 1 :(得分:0)

试试这个:

XElement service = doc.Element("Ids");
service.Add(
    new XElement("ID", idulong.ToString()),
    new XElement("Succesfull", 1)
);

答案 2 :(得分:0)

XElement service = doc.Element("Ids");
service.Add(new XElement("ID", idulong.ToString()),
        new XElement("Succesfull", 1));

service.Add(new XElement("ID", idulong.ToString(),new XElement("Succesfull",1)));