LINQ to XML - Snažím se vytisknout symbol nekonečna

hlasů
2

Jsem pomocí LINQ to XML pro některé výstupní HTML souborů. Musím umístit symbol nekonečna ( ∞) v kódu na výstupu v některých buňkách tabulky. Jsem vytvoření XElement takhle

var table = new XElement(table,
            new XElement(tr,
                new XElement(td, ∞)
            )
        );

var dokument = nový XDocument (tabulka); document.Save (myFile);

a když je soubor uložen nejsem vidět ∞, místo toho vidím &#8734. Jak mohu zabránit tento překlad z děje?

Položena 27/08/2009 v 02:02
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
5

LINQ to XML dělá správnou věc - je to za předpokladu, že když si to dát řetězec jako obsah, to je obsah, který chcete vidět. To dělá útěku pro vás. Vy opravdu nechcete muset uniknout každý <, >i &sami.

To, co potřebujete udělat, je dát mu skutečný obsah, který chcete - což je symbol nekonečna. Tak zkuste toto:

var table = new XElement("table",
            new XElement("tr",
                new XElement("td", "\u8734")
            )
        );

Že může dobře skončit nevychází za entitu z výstupního souboru, jen kódovaného znak - ale to by mělo být v pořádku, pokud nemáte problémy kódování.

EDIT: Právě jsem zkontroloval a symbol nekonečno je ve skutečnosti U + 221E, takže budete chtít „\ u221e“ místo. Nemohu skutečně vidět, co U + 8734 má být ... to nemusí být definována v Unicode v tuto chvíli.

Odpovězeno 27/08/2009 v 03:07
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more