VB.Net,Linq到Xml:这是创建xml时使用逻辑的正确方法吗?

时间:2011-02-28 11:48:34

标签: vb.net linq-to-xml

在构建xml文档时,我需要使用逻辑来指示xml的结果;逻辑上它类似于下面的一段代码(虽然这不起作用):

    Dim buildElement As Boolean = True
    Dim xe As XElement = _
    <xml>
        <% If buildElement Then %>
        <BuildMyElement><%= buildElement.ToString %></BuildMyElement>
        <% End If %>
    </xml>

我已经设法使用下面显示的方法执行此操作,这是建议的方法吗?还是有更好的方法?

    Dim buildElement As Boolean = True
    Dim xe As XElement = _
    <xml>
        <%= If(buildElement, _
            <BuildMyElement><%= buildElement.ToString %></BuildMyElement>, _
            Nothing) %>
    </xml>

1 个答案:

答案 0 :(得分:0)

当你在一行中使用If子句时,你有2个重载:

 IF(condition, true, false) 

 If(Condition,False)

您可以编写类似这样的内容,以避免分配任何值:

If(buildElement is nothing,<BuildMyElement><%= buildElement.ToString %></BuildMyElement>)