XDocument.Save()没有标题

lak*_*tak 16 c# xml linq-to-sql

我正在使用Linq-to-XML编辑csproj文件,并且需要在没有<?XML?>标题的情况下保存XML .

由于XDocument.Save()缺少必要的选项,最好的方法是什么?

Mar*_*ell 25

您可以使用XmlWriterSettings,并将文档保存到XmlWriter:

XDocument doc = new XDocument(new XElement("foo",
    new XAttribute("hello","world")));

XmlWriterSettings settings = new XmlWriterSettings();
settings.OmitXmlDeclaration = true;
StringWriter sw = new StringWriter();
using (XmlWriter xw = XmlWriter.Create(sw, settings))
// or to write to a file...
//using (XmlWriter xw = XmlWriter.Create(filePath, settings))
{
    doc.Save(xw);
}
string s = sw.ToString();
Run Code Online (Sandbox Code Playgroud)