Не понимаю, почему символы новой строки теряются после сериализации XML.C#

Место общения программистов C#
Anonymous
Не понимаю, почему символы новой строки теряются после сериализации XML.

Сообщение Anonymous »

Из браузера я отправляю следующую полезную нагрузку в виде строки: Обратите внимание, что значение Sql содержит символы новой строки. Row, FROM и Table находятся на новой строке.
Я передаю эту строку XML в метод,

Код: Выделить всё

XmlSerializationUtility.FromXml(xml, "Form")

Код: Выделить всё

public static T FromXml(string xml, string root)
{
XmlSerializer xmlSer = GetXMLSerializer(typeof(T), new XmlRootAttribute(root));
var stringReader = new StringReader(xml);
T result = (T)xmlSer.Deserialize(stringReader);

// Output or inspect the deserialized value
Console.WriteLine("Deserialized value: " + result?.ToString());

// Return the deserialized result
return result;
}

Код: Выделить всё

private static XmlSerializer GetXMLSerializer(Type type, XmlRootAttribute root)
{
string key = string.Format(CultureInfo.InvariantCulture, "CachedXmlSerializer:{0}:{1}", type, root.ElementName);

bool isCached = _serializers.TryGetValue(key, out XmlSerializer ser);

if (!isCached)
{
ser = new XmlSerializer(type, root);
_serializers.Add(key, ser);
}

return ser;
}
Когда я проверяю свою полезную нагрузку после выполнения FromXml, все эти символы новой строки исчезают, и я вижу select top(1) Row FROM Table.Знаете ли вы, почему я теряю все эти символы новой строки?

Подробнее здесь: https://stackoverflow.com/questions/790 ... ialization

Вернуться в «C#»