C# xml删除所有值
我只想删除所有xml元素值,并将名称空间保留在原始文件中。我发现一些代码可以删除值,但也可以删除名称空间。如何删除xml值C# xml删除所有值,c#,xml,C#,Xml,我只想删除所有xml元素值,并将名称空间保留在原始文件中。我发现一些代码可以删除值,但也可以删除名称空间。如何删除xml值 private static XElement RemoveAllNamespaces(XElement xmlDocument) { if (!xmlDocument.HasElements) { XElement xElement = new XElement(xmlDocument.Name.Local
private static XElement RemoveAllNamespaces(XElement xmlDocument)
{
if (!xmlDocument.HasElements)
{
XElement xElement = new XElement(xmlDocument.Name.LocalName);
xElement.Value = String.Empty;
foreach (XAttribute attribute in xmlDocument.Attributes())
xElement.Add(attribute);
return xElement;
}
return new XElement(xmlDocument.Name.LocalName, xmlDocument.Elements().Select(el => RemoveAllNamespaces(el)));
}
是否还要保留元素?是的,我只想删除原始文档中的xml值file@user1354345:您可以给出输入和预期输出的示例吗?您可以检查元素名称
XElement.name.LocalName.StartsWith('xmlns')
也LocalName
将从元素中删除名称空间。您希望使用xElement.Name.ToString()
在元素中保留名称空间。