2015-08-28 47 views
0

我正在使用xElement查詢將xml文檔中的數據提取到結構中。我想限制存儲的數據只有當某些字段包含特定字符串的一部分時。xElement查詢等效於sql如

此代碼有效,但字符串必須完全匹配。

var data = from query in xmlDocFromPage.Descendants("DIRECTORY") 
        where (string)query.Element("lastNAME") == "Smith" 
        select new contactDataClass 
        { 
         lastName = (string)query.Element("lastNAME"), 
         firstName = (string)query.Element("firstNAME"), 
         middleName = (string)query.Element("middleNAME") 
        }; 

我想實現以下sql查看語句的等價物。

where (string)query.Element("lastNAME") like "%Smith%" 

可能嗎?

回答

0

可以使用string.Contains方法(空檢查後的情況下,該節點不存在):

where query.Element("lastNAME") != null && query.Element("lastNAME").Value.Contains("Smith")