LINQ to XML在标签之间生成\ r \n?

Eli*_*eth 2 xml linq whitespace linq-to-xml

我正在生成具有以下结构的XElement:

<TestNames>\r\n <Test>YA</Test>\r\n <Test>YO</Test>\r\n </TestNames>
Run Code Online (Sandbox Code Playgroud)

如何以非黑客的方式摆脱空白和\ r \n :)

更新:

XElement testsXmlDocument= new XElement("TestNames");           

foreach (string test in selectedTests)         
    testsXmlDocument.Add(new XElement("Test",test)); 

return testsXmlDocument.ToString();
Run Code Online (Sandbox Code Playgroud)

Phi*_*ney 9

XElement提供ToString的重载,它接受类型的参数SaveOptions.这个枚举的一个值是DisableFormatting.

如果这不能给你足够的控制,那么你需要使用SaveXElement 的重载来获取XmlWriter的一个实例.可以使用XmlWriterSettings控制XmlWriter的输出.

请注意,创建XmlWriter的推荐方法是使用静态Create方法而不是直接构造方法.如果您希望输出字符串,则可以使用带有StringWriter的重载.