VB .NET XDocument并使用IIF

时间:2012-02-08 11:35:29

标签: vb.net

我刚刚在VB .NET中了解了XDocument,并且非常喜欢我在代码中编写XML文档的方式,但只有一个小问题,我找不到一个好的解决方案。问题在于IIF用于检查某些条件,例如是否应该打印节点。

问题是当我想要打印多个节点(从字符串列表中)时,如果我的条件首先是真的。这是问题代码,我正在检查几个条件,实际上我将尝试循环节点:

<%= IIf(settings.UseInvoiceFreeText _
OrElse settings.BuyerIntermediatorCode = "" _
OrElse settings.BuyerIntermediatorCode = "", _
      <%= From freeText As String In InvoiceFreeTexts
       Select <InvoiceFreeText><%= freeText %></InvoiceFreeText>
       %>, _
       Nothing)
%>

错误消息显示:此处无法使用嵌入式表达式。

我该怎么做?

谢谢:)

1 个答案:

答案 0 :(得分:2)

错误指出您已经在表达式中。您可以将查询放在标准括号()内,而不是嵌入<%= %>的表达式。

另外,请使用If() 运算符而不是IIf() 函数,这样您就不会总是评估这两个分支。