.NET XML teknolojilerini işimde oldukça kapsamlı kullanıyorum. Çok sevdiğim şeylerden biri de XSLT motoru, daha doğrusu onun genişletilebilirliğidir. Ancak orada bir sıkıntı kaynağı olmaya devam eden küçük bir parça var. Büyük bir şey ya da yaşayamayacağımız bir şey değil, üretmek istediğimiz güzel XML'i üretmemizi engelliyor..NET XmlWriter'de doğru ad alanı yönetimi
Yaptığımız şeylerden biri, düğümleri satır içi ve düğümleri bir XML belgesinden diğerine aktarmaktır.
Ne yazık ki, düğümleri bir XmlTextWriter
'a kaydettiğinizde (aslında XmlWriter.Create(Stream)
döndürürse), ad alanı tanımları gerekli (daha önce tanımlanmış) olsun ya da olmasın, oraya atılır.
<root xmlns:abx="http://bladibla">
<abx:child id="A">
<grandchild id="B">
<abx:grandgrandchild xmlns:abx="http://bladibla" />
</grandchild>
</abx:child>
</root>
herkes kendi ad tanımları hakkında verimli olmak için .NET ikna etmek nasıl bir öneri var mı: Aşağıdaki xml tür olsun?
sayesinde Boaz
PS. Ek bir bonus olarak, varsayılan ad alanını geçersiz kılmak ve bir düğüm yazarken onu değiştirmek istiyorum.
'XmlTextReader' ve' XmlTextWriter' esasen amortismana tabi tutulur ve önerilen 'Create' yöntemlerle çalışıyorsanız doğrudan kullanılamaz. Her halükarda, bu ödülünü eklediğimde buradaydı, umarım uygun değildir. Bu, mükemmel bir şekilde ifade edilen soruyu yanıtlamıyor, * viz *, ".NET'in ad alanı tanımları konusunda verimli olması için nasıl ikna edilmesi." Ben sadece bir özel okuyucu veya yazar aracılığıyla mümkün olabilir, ancak yerel bir çözüm varsa bu bir kesmek veririm. – harpo