假设我们有一些带有ChildID,ParentID和Title的DataTable或IEnumerable。 我们需要将它序列化为XML,如
<Entity title="">
<Entity title=""></Entity>
<Entity title=""></Entity>
</Entity>
正如我发现的那样,标准的DataTable.GetXML()会返回不同的东西。我考虑初始化类树,如实体e =新实体(ID,标题,ParentEntityID),然后序列化它。表格大约是&gt; 3000元。有更快的方法吗?
答案 0 :(得分:1)
使用Linq to SQL选择Linq to XML
var document = new XDocument(
(
from f in db.FirstTable
select new XElement("Entity",
new XAttribute("title", f.TitleField),
(
from s in f.SecondTable
select new XElement("Entity",
new XAttribute("title", f.TitleField),
new XAttribute("Entity", f.SomeField)
)
).ToArray()
)
).ToArray()
);
XElement
构造函数以及XDocument
的接受数组或内容,这就是.ToArray()
。