有没有办法可以动态添加新的XElement来形成子节点,如下例所示?
XElement xEl = new XElement(
new XElement("Root",
// ** Is there a way I can do this:
// for(MyObject mObj in myObjects) {
// if (IsXmlObj(mObj)){
// new XElement(mObj.Name, mObj.Value);
// }
// }
);
我想迭代一个对象列表来形成子节点。
如果我现在修改迭代部分变为:
,该怎么办? // for(MyObject mObj in myObjects) {
// if (IsXmlObj(mObj)){
// if (mObject.Name=="Small"){ mObject.Name="Big";}
// new XElement(mObj.Name, mObj.Value);
// }
// }
答案 0 :(得分:2)
以这种方式使用Select
:
var xEl = new XElement("Root",myObjects.Where(mObj=>IsXmlObj(mObj))
.Select(mObj=> new XElement(mObj.Name, mObj.Value)));