Добавление преобразования С# XSLT & # xA; и & # xD; к выходу
У меня проблема с преобразованием XSLT:
style="width:{Data/PercentSpaceUsed}%;"
И значение Data/PercentSpaceUsed является целым числом.
И он выводит:
style="width:
 3
 %;"
вместо ожидаемого:
style="width:3%;"
Здесь код, который выполняет преобразование: xslt_xslt
- это преобразование xml, sw.ToString()
содержит 
и 

, которые я не ожидал.
var xslTransObj = new XslCompiledTransform();
var reader = new XmlTextReader(new StringReader(xslt_xslt));
xslTransObj.Load(reader);
var sw = new StringWriter();
var writer = new XmlTextWriter(sw);
xslTransObj.Transform(new XmlTextReader(new StringReader(xslt_data)), writer);
ResultLiteral.Text = sw.ToString();
Ответы
Ответ 1


- это возвраты каретки и фиды линий в вашем XML или XSLT. Убедитесь, что xml похож на
<Value>3</Value>
Вместо
<Value>
3
</Value>
Я считаю, что есть способ остановить пробелы, используемые в вашей трансформации, хотя я не знаю этого с головы.
Ответ 2
Вы получаете пробелы из исходного документа. Используйте
style="width:{normalize-space(Data/PercentSpaceUsed)}%;"
чтобы удалить пробелы. Другой вариант в вашем случае - использовать
style="width:{number(Data/PercentSpaceUsed)}%;"
Ответ 3
попробовать
XmlWriterSettings settings = new XmlWriterSettings();
settings.OmitXmlDeclaration = true;
settings.Indent = true;
settings.IndentChars = "\t";
settings.NewLineHandling = NewLineHandling.None;
XmlWriter writer = XmlWriter.Create(xmlpath, settings);
для ввода пробелов, которые должны быть сохранены на выходе для значений атрибутов.
Примечание: при использовании выше настроек вкладки используются для отступов