2011-02-28 64 views
1

在構建一個xml文檔時,我需要使用邏輯來規定xml的結果;在邏輯上,它類似於下面的一段代碼(雖然這不工作):VB.Net,Linq to 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> 

回答

0

,當你使用一個線如果條款你有2個過載是:

IF(condition, true, false) 

If(Condition,False) 

你可以寫這樣的事情,以避免分配什麼值:

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

嘗試用可空布爾值但由於這兩種數據類型不同,它會產生轉換錯誤。 – baileyswalk 2011-02-28 13:51:26

+0

好吧所以你必須使用你的第一種方法是不是一個不好的解決方案:) – JAiro 2011-02-28 13:53:37