Сохранять пробелы / разрывы строк при сериализации через веб-службу ASMX
Я делаю некоторую предварительную обработку документа XML в веб-службе ASMX (устаревшая служба .NET SOAP) для возможного использования в интерфейсе Silverlight.
Я обрабатываю этот XML-документ в виде объекта POCO для простоты использования. Объект определяется следующим образом:
public class CACDocument : ITextDocument
{
#region Properties
public string Title { get; set; }
public string Text { get; set; }
public List<Code> CodeList { get; set; }
public XElement FormatedText { get; set; }
#endregion
#region Constructor
public CACDocument()
{
CodeList = new List<Code>();
}
#endregion
}
Свойство Text в этом объекте содержит в основном форматированный текст (разрывы строк, пробелы и т. Д.). Узел XML, который передает это свойство, выглядит следующим образом:
<text>
A TITLE FOLLOWED BY two line breaks
Some text followed by a line break
Some more text that might extend for a paragraph or two followed by more line breaks
Still more text
</text>
Все в порядке, и формат поддерживается, как и следовало ожидать, пока веб-службы не сериализуют данные, которые будут отправлены во внешний интерфейс. Я предполагаю, что при попытке оптимизировать пропускную способность сериализованный объект удаляет лишние пробелы и разрывы строки из свойства Text перед отправкой. В этом конкретном случае это форматирование важно. Есть ли способ заставить веб-сервис поддерживать форматирование пробелов и разрывов строк?
Я полагаю, что я заменяю некоторые кодировки для рассматриваемых элементов, а затем преобразую обратно в интерфейс, но это кажется мне чем-то вроде клуджа.