Problem jak vytvorit...(Class XMLwriter)   otázka

C#, XML

Dobry vecer,

bezradne zkousim vygenerovat (XMLwriter) tento vyraz:

<Atribut  Name = "Adela">DEHAM< /Atribut>

nevim jak tam dostat ten >DEHAM< ? Pokud by to bylo:

<Atribut  Name = "Adela" /Atribut>

tak by byl vysledek takovy:

w.WriteStartElement("Atribut");
w.WriteAttributeString ("Name", "Adela");
w.WriteEndElement;

Dekuji. (V.Studio 2010 Express, net 4.0)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

moc nerozumím otázce, ale pravděpodobně Vám jde o atribut innertext

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Před w.WriteEndElement;

w.WriteValue("DEHAM");

Koukněte se na System.Xml.LINQ, podle mě se s tím dělá o poznání lépe.

//Dokument
XDocument xdoc = new XDocument();
//Hlavička
xdoc.Declaration = new XDeclaration("1.0", "UTF-8", "yes");

//Element atribut
XElement xe = new XElement("Atribut"); xe.Value = "DEHAM";

//Attribut Name
XAttribute xa = new XAttribute("Name", "Adela");

//Přidání atributu k elementu
xe.Add(xa);

//Přidání elementu do dokumentu
xdoc.Add(xe);

Pak už jen Xdoc.Save(...);

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Toto je dosť subjektívne, ale mne pripadá lepšie spraviť to cez XmlWriter, nie je to potom až také ukecané. Zase použitím System.Xml.LINQ môžte kód rozdeliť do viacerých metód, alebo dokonca viacerých tried. Ale na druhej strane, nie je to dobré pre veľké dokumenty, pretože to "žere" veľa RAM, každá XNode(aj elementy, aj atribúty) je v tom prípade samostatný objekt na halde.

Každopádne, ešte by som spomenul, že sú situácie, keď by bolo lepšie použiť T4 šablóny, potom je kód krajší. O T4 šablonách je tu aj článok: http://vbnet.cz/clanek--158-pouzivame_t4...

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback