如何添加 XElement 迭代元素?
How can I add XElement iterating elements?
这是我的代码:
var xml = new XElement("test", new[] {
new XElement("group", new[] {
new XElement("date", dateNow.ToString("dd/MM/yyyy HH:mm:ss"))
}),
new XElement("users", new[] {
foreach(var item in in PlaceHolderCustom.Controls)
{
new XElement("nome", ((TextBox)item.FindControl("myTextBox")).Text)
}
})
});
我想在 xml 中设置一些固定字段(在元素 "group" 中)和一些会遍历占位符的字段。但是当我尝试添加一个新的 "iterating" 列表时,语法似乎是错误的。
我哪里错了?
使用 linq .Select
执行 foreach
。此外,当您创建数组时,new [] {}
语法仅对 new string[]
有效。在你的情况下使用:
new XElement[] {}
- 或者因为该方法得到一个
params object[]
你可以独立地给每个 new XElement
而不用用数组包装
因此展示了传递 XElements
集合的两种方式:
var xml = new XElement("test",
new XElement("group", new XElement[] {
new XElement("date", dateNow.ToString("dd/MM/yyyy HH:mm:ss"))
}),
new XElement("users", PlaceHolderCustom.Control.Select(item =>
new XElement("nome", ((TextBox)item.FindControl("myTextBox")).Text)).ToArray())
);
这是我的代码:
var xml = new XElement("test", new[] {
new XElement("group", new[] {
new XElement("date", dateNow.ToString("dd/MM/yyyy HH:mm:ss"))
}),
new XElement("users", new[] {
foreach(var item in in PlaceHolderCustom.Controls)
{
new XElement("nome", ((TextBox)item.FindControl("myTextBox")).Text)
}
})
});
我想在 xml 中设置一些固定字段(在元素 "group" 中)和一些会遍历占位符的字段。但是当我尝试添加一个新的 "iterating" 列表时,语法似乎是错误的。
我哪里错了?
使用 linq .Select
执行 foreach
。此外,当您创建数组时,new [] {}
语法仅对 new string[]
有效。在你的情况下使用:
new XElement[] {}
- 或者因为该方法得到一个
params object[]
你可以独立地给每个new XElement
而不用用数组包装
因此展示了传递 XElements
集合的两种方式:
var xml = new XElement("test",
new XElement("group", new XElement[] {
new XElement("date", dateNow.ToString("dd/MM/yyyy HH:mm:ss"))
}),
new XElement("users", PlaceHolderCustom.Control.Select(item =>
new XElement("nome", ((TextBox)item.FindControl("myTextBox")).Text)).ToArray())
);