我在Xdocument对象中加载了一个html文档:
XDocument xdoc = Xdocument.load(path);
XElement el = new XElement("name","value");
xdoc.Descendants("body").Single().Add(el); <=== sequence conatin no element
文档包含body元素,那么为什么会出现此异常?
答案 0 :(得分:1)
我怀疑问题是由于命名空间而无法找到body
元素。如果它在命名空间中,您可以使用以下命令找到它:
XNamespace ns = "whatever the namespace uri is";
xdoc.Descendants(ns + "body").Single().Add(el);
答案 1 :(得分:0)
尝试使用:
xdoc.Root.Descendants("body").Single().Add(el);
答案 2 :(得分:0)
你可以找到没有命名空间的元素,只需在XElement中使用Local Name
XElement root = XElement.Load("Data.xml");
root.Descendants().Where(x => x.Name.LocalName == "body")