【发布时间】:2016-09-26 10:39:47
【问题描述】:
有没有办法使用 linq to xml 生成 xml,无需任何格式(空格、换行符等)且无需保存到文件,只在内存中?
我将此 xml 发送到某个 api,这是要求。现在我正在使用string.Replace();
var doc = new XDocument(
new XDeclaration("1.0", "UTF-8", null),
new XElement("request",
new XAttribute("version", "1.0"),
new XElement("m",
new XElement("id", credentials.id),
new XElement("signature"), ""),
new XElement("data",
new XElement("p",
new XAttribute("id", ""),
new XElement("porp",
new XAttribute("name", "c"),
new XAttribute("value", c)),
new XElement("porp",
new XAttribute("name", "a"),
new XAttribute("value", a))))));
var data = doc.Element("request").Element("data").Elements();
string result = string.Concat(data).Trim().Replace("\r\n", "").Replace(" ", "");
var signature = Utils.ComputeSignature(result, credentials.Password);
doc.Element("request").Element("m").Element("signature").Value = signature;
return doc.ToString().Trim().Replace("\r\n", "").Replace(" ", "");
感谢您的帮助!
【问题讨论】:
标签: c# xml linq linq-to-xml