XmlDocument veya XmlWriter kullanarak xml dosyaları oluşturabileceğinizi görüyorum.XmlDocument vs XmlWriter
Bir yöntemin bir diğerinin üzerinde kullanılmasıyla ilgili herhangi bir fayda var mı?
XmlDocument veya XmlWriter kullanarak xml dosyaları oluşturabileceğinizi görüyorum.XmlDocument vs XmlWriter
Bir yöntemin bir diğerinin üzerinde kullanılmasıyla ilgili herhangi bir fayda var mı?
XmlWriter
yapar. XmlDocument
XML verilerini bellekte bir nesne modeli olarak oluşturur.
Belgenin boyutuyla orantılı olarak bellek kullanmadan XML belgeleri oluşturmanız gerektiğinde, XmlWriter
kullanın. XML'yi bellekte işlemeniz gerektiğinde - varolan bir XML belgesini bir nesne modeline ayrıştırırken veya rastgele konumlarda öğeler oluştururken veya varolan bir belgeyi güncelleştirirken veya bir belgede arama yapmak için XPath kullanarak XmlDocument
kullanıyorsunuz . (Aslında, ikinci durumda sizin için XPathDocument
kullanmak istiyorum, ama salt beri hiçbir koşulda Hata , bir XmlWriter
kullanamadı.) Tabii ki
o kullanarak bir akışa XML veri yazmak mümkün bir XmlDocument
. Ancak bunu yapmak için aslında XmlWriter
kullanıyorsunuz, çünkü XmlDocument
dahili olarak kullanıyor.
Bu, sizin senaryounuza bağlı olacaktır. XmlDocument tüm belgeyi belleğe yüklerken, XmlWriter bir akış kullanır, bu nedenle büyük XML belgeleriyle çalışırken daha uygundur. Öte yandan XmlDocument kullanımı daha kolay olabilir. Yavaş yani dosya (500 mb ve daha fazla) büyük ama XmlWriter doğrudan
XmlDocumentSystem.Xml.XmlNode mağazaları, bellekteki verileri delik XDocument ve XElement ile çalışmak. XML verilerinin akışa dayalı yazımı çok daha basit ve dostça bir API
akışı yazıyor kullanımı kolaydır zaman .Net Framework 3.5 Sana tavsiye ediyorum desteklerse
% 99'luk durumlarda olduğu gibi 'XmlWriter'' 'MemoryStream' tür desteğiyle kullanılırken, bellek boyutu farkı ihmal edilebilir. Ancak önemli olan şudur: XmlDocument 'şemaya karşı doğrulanabilir. – ajeh