Отмена экранирования XML-сущностей с помощью XmlReader в .NET?

Я пытаюсь отключить экранирование XML-сущностей в строке в .NET (C #), но мне кажется, что это не работает правильно.

Например, если у меня есть строка AT & amp; T , его следует преобразовать в AT&T .

Один из способов - использовать HttpUtility.HtmlDecode (), но это для HTML.

Итак, у меня есть два вопроса по этому поводу:

  1. Безопасно ли использовать HttpUtility.HtmlDecode () для декодирования XML-объектов?

  2. Как мне использовать XmlReader (или что-то подобное) для этого? Я пробовал следующее, но всегда возвращает пустую строку:

     статическая строка ReplaceEscapes (текст строки) если у меня есть строка  AT&T , ее нужно преобразовать в  AT&T . 

    Один из способов - использовать HttpUtility.HtmlDecode (), но это для HTML.

    Итак, у меня есть два вопроса по этому поводу:

    1. Безопасно ли использовать HttpUtility.HtmlDecode () для декодирования сущностей XML?

    2. Как мне использовать XmlReader (или что-то подобное) для этого? Я пробовал следующее, но всегда возвращает пустую строку:

       статическая строка ReplaceEscapes (текст строки) если у меня есть строка  AT&T , ее нужно преобразовать в  AT&T . 

      Один из способов - использовать HttpUtility.HtmlDecode (), но это для HTML.

      Итак, у меня есть два вопроса по этому поводу:

      1. Безопасно ли использовать HttpUtility.HtmlDecode () для декодирования XML-объектов?

      2. Как мне использовать XmlReader (или что-то подобное) для этого? Я пробовал следующее, но всегда возвращает пустую строку:

         статическая строка ReplaceEscapes (текст строки) HtmlDecode () для декодирования объектов XML? 

      3. Как мне использовать XmlReader (или что-то подобное) для этого? Я пробовал следующее, но всегда возвращает пустую строку:

         статическая строка ReplaceEscapes (текст строки) HtmlDecode () для декодирования объектов XML? 

      4. Как мне использовать XmlReader (или что-то подобное) для этого? Я пробовал следующее, но всегда возвращает пустую строку:

         статическая строка ReplaceEscapes (текст строки)
        {
         Читатель StringReader = новый StringReader (текст);
        
         Настройки XmlReaderSettings = новый XmlReaderSettings ();
        
         settings.ConformanceLevel = ConformanceLevel.Fragment;
        
         используя (XmlReader xmlReader = XmlReader.Create (читатель, настройки))
         {
         вернуть xmlReader.ReadString ();
         }
        }
        
10
задан Philippe Leybaert 14 March 2011 в 20:47
поделиться