Tôi có đoạn mã sau:Tại sao XDocument của tôi lưu bản khai báo khi tôi không muốn nó?
class Program
{
static void Main(string[] args)
{
using (var stream = File.Create(@"C:\test.xml"))
{
var xml =
new XElement("root",
new XElement("subelement1", "1"),
new XElement("subelement2", "2"));
var doc = new XDocument(xml);
doc.Declaration = null;
doc.Save(stream);
}
}
}
tôi đang cố gắng để có được XML để tiết kiệm mà không cần khai báo xml, nhưng mặc dù tôi đang nulling ra tuyên bố của XDocument
, nó vẫn đang được lưu vào XML thức .
Mã này được xuất ra:
<?xml version="1.0" encoding="utf-8"?>
<root>
<subelement1>1</subelement1>
<subelement2>2</subelement2>
</root>
Tại sao bạn muốn lưu một tài liệu XML mà không cần khai báo? Nó rất hữu ích để bao gồm một khai báo chỉ định mã hóa và phiên bản của tài liệu XML cho người tiêu dùng của tệp XML. –
Bởi vì XML này đang được gửi đến một số hệ thống khác trong công ty mà có thể phá vỡ nếu bạn có khai báo xml (và tôi không có quyền kiểm soát các hệ thống đó, đó là một bộ phận khác) – KallDrexx
đủ công bằng :) Tôi chỉ thắc mắc tại sao –