【问题标题】:How to specify conditional multiple xelements in XDocument creation?如何在 XDocument 创建中指定条件多个 xelements?
【发布时间】:2015-04-24 03:53:30
【问题描述】:
new XDocument(
    new XElement("first",
       condition==true?
       new XElement("second","2nd"),
       new XElement("third","3rd"):null
    )
)

上面的语法可能不正确,但我希望实现的是如何将多个 xelements 包含在一个条件中。

【问题讨论】:

  • 请适当地发布问题和格式。
  • 完成。请再看一遍
  • 我假设你应该使用 if, `if (condition == true) { /* add "second", "third" here / } else { / add这里为空 */ }
  • 看来你想知道如何使用三元运算符
  • 您能否举例说明您希望查看条件是否为真以及是否为假(以 XML 形式)的输出示例?

标签: c# linq-to-xml


【解决方案1】:

您不能在条件语句中使用这样的列表表达式。里面的逗号来自参数列表,?: 的两个分支必须是赋值兼容的。

它应该如下所示:

new XDocument(
    new XElement("first",
       condition==true
        ? new XElement[] {new XElement("second","2nd"),
                         new XElement("third","3rd") }
        : null //new XElement[] { }
    )
)

编辑:else 分支只能使用null

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多