기존 XML 문서를 조작하고 몇 가지 노드와 속성을 제거하고 새 노드를 추가 할 때 가장 적합한 클래스 그룹은 무엇이 될까요? 이것을 성취합니까?.NET에서 XML을 조작하는 가장 좋은 방법
XML 조작을위한 많은 .NET 클래스가 있으며,이를 수행하는 최적의 방법이 무엇인지 확신 할 수 없습니다.
기존 XML 문서를 조작하고 몇 가지 노드와 속성을 제거하고 새 노드를 추가 할 때 가장 적합한 클래스 그룹은 무엇이 될까요? 이것을 성취합니까?.NET에서 XML을 조작하는 가장 좋은 방법
XML 조작을위한 많은 .NET 클래스가 있으며,이를 수행하는 최적의 방법이 무엇인지 확신 할 수 없습니다.
메모리에 맞지 않는 엄청난 XML 인 경우 XmlReader/XmlWriter을 사용해야합니다. 그렇지 않다면 LINQ to XML은 매우 사용하기 쉽습니다. .NET 3.5가 없다면 XmlDocument을 사용할 수 있습니다.
여기 노드를 제거하는 예입니다 : 당신이 공식 스키마가있는 경우
using System.Xml.Linq;
using System.Xml.XPath;
var doc = XElement.Load("test.xml");
doc.XPathSelectElement("//customer").Remove();
doc.Save("test.xml");
감사! xml을 메모리의 문자열이나 파일과 만 사용할 수 있습니까? – juan
xml의 출처에 관계없이 xml과 호환됩니다. XElement.Parse()를 호출하고 xml을 문자열로 전달할 수 있어야합니다. –
xml 네임 스페이스, 특히 기본 네임 스페이스를 처리하려면 다음을 확인하십시오. http://stackoverflow.com/questions/25396140/use-xpath-with-xml-namespace – smwikipedia
사용 Linq에 XML You can see the XDocument class here
에, 당신은 XmlSerializer를 사용할 수 있습니다. 그렇지 않으면 XmlDocument, XmlNode, XmlElement 등 클래스를 사용하는 것이 가장 좋습니다.
그냥 변환의 경우 그렇지 않으면 그것은 또한 당신이 가장 쉬운 옵션이 될 수있는 XML 스타일 시트와 문서를 구문 분석 등
@Kurt :'XmlSerializer'가 처리하지 못합니다. 모든 스키마. –
을 개체를 나타내는, 일부 문서를 마크 업 즉,에 대한 XML을 사용하는 옵션에 따라 달라집니다 수 방법.
Here is how to use XSLT in .NET.
및
처음에는 나에게 약간의 혼란,하지만 지금은 내 모든 XML 변환을 거의 사용 XSLT를 할 수 있습니다.
.NET 버전은 무엇입니까? – AakashM