最初使用System.Xml.Linq dll版本3.5.0.0我删除了空元素,如下所示
XDocument document = XDocument.Load(_fileName);
document.Descendants().Where(e => string.IsNullOrEmpty(e.Value)).Remove();
document.Save(_fileName, SaveOptions.DisableFormatting);
现在我的System.Xml.Linq dll版本是4.0.0.0,但上面的代码无效,因为我看不到Where子句。
任何人都可以帮助我如何重写代码删除4.0.0.0中的空元素
答案 0 :(得分:6)
试试这个,
var document = XDocument.Parse(original);
document.Descendants()
.Where(a=> a.IsEmpty || String.IsNullOrWhiteSpace(a.Value))
.Remove();
此外,您应该拥有以下命名空间
using System.Linq;
using System.Xml.Linq;