![](/img/trans.png)
[英]How to add "reload" and IsLoading status to 2nd level Observable
[英]Add 2nd level element to XML
我有一个XML文件:
<uploads>
<upload backupid="3">
XXXXXXXXX
</upload>
</uploads>
如何添加元素(或什至更多)代替XXX
(对于给定的backupid
)?
<file filename="XXX">HASH-CODE</file>
我尝试了以下操作:
public static void AddFileToExistingUpload(int lastUsedID, string fileName, string generatedHash)
{
var xdoc = LoadUploadsXML();
var element = xdoc.Elements("upload").SingleOrDefault(x => x.Attribute("backupid").Value.Equals(lastUsedID));
element.Add(new XElement("file", generatedHash, new XAttribute("filename", fileName)));
SaveUploadXML(xdoc);
}
但是我得到的是:
发生类型'System.NullReferenceException'的未处理异常
该xdoc
只有一个uploads
元素, upload
是根据是:
var element = xdoc.Element("uploads").Elements("upload").SingleOrDefault(x => x.Attribute("backupid").Value.Equals(lastUsedID));
或插入Root
代替:
var element = xdoc.Root.Elements("upload").SingleOrDefault(x => x.Attribute("backupid").Value.Equals(lastUsedID));
或使用Descendants
:
var element = xdoc.Descendants("upload").SingleOrDefault(x => x.Attribute("backupid").Value.Equals(lastUsedID));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.