DataContractSerializer кодировать \ n - PullRequest
0 голосов
/ 07 ноября 2010

Я использую следующий код для сериализации моего объекта

DataContractSerializer ser = new DataContractSerializer(obj.GetType());
String text;
using (MemoryStream memoryStream = new MemoryStream())
{
  ser.WriteObject(memoryStream, obj);
  byte[] data = new byte[memoryStream.Length];
  Array.Copy(memoryStream.GetBuffer(), data, data.Length);
  text = Encoding.UTF8.GetString(data);
}

Мой объект сериализуется следующим образом:

<Meta xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\"><Description>This is my new file&#xD;\n&#xD;\nMore Data</Description><Title>My Other Test Document</Title></Meta>

Обратите внимание, что моему \ n не удалось избежатьЭто почему?Как лучше всего отправить \ r \ n через xml.

Я искал и не вижу статей об этом.Я пропускаю какой-либо атрибут в моем сериализованном коде?

1 Ответ

0 голосов
/ 03 февраля 2011

Вавилон - совсем нет, здесь вы не пропустите никаких особых атрибутов.\ N - это , получающий сериализацию.Если бы он интерпретировался как специальный символ без перевода строки, вы бы увидели \ n в строке, а не \ n.Не перехватываете ли вы новую строку на стороне клиента, и подтвердили ли вы ее, выплевывая ее через вызов stdout?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...