C # XmlWriter не превращается в «к» - PullRequest
0 голосов
/ 17 июня 2019

Я прочитал несколько связанных постов, но все еще не могу понять, может ли XmlWriter превратить ' в ' без использования каких-либо библиотек.

До сих пор я знал, что 5 экранируемых символов (&, <, >, ' и ") автоматически обрабатываются XML. Но я хочу, чтобы апостроф (') превратился в &apos; и с XmlWriter.WriteAttributeString этого не происходит, и если я использую string.Replace, я получаю &amp;apos;.

Вот что я получаю после преобразования:

"Test Cue 1  &gt; '"

Я хочу, чтобы результат был:

"Test Cue 1  &gt; &apos;"

1 Ответ

2 голосов
/ 17 июня 2019

XmlWriter экранирует то, что необходимо экранировать, чтобы создать действительный XML (и не более). Строка, разделенная двойными кавычками, не требует экранирования одинарных кавычек, и наоборот. Если вы вручную замените ' на &apos;, он не поймет, что вы пытаетесь сделать, и, естественно, выйдет из &.

Не могли бы вы объяснить ваш вариант использования?

...