2011-10-13 3 views
0

제품 이름 및 제품 가격이있는 XML 카탈로그가 있습니다.XML LINQ : select와 함께 사용하는 방법은 어디에서?

나는 성공적으로이 코드 내 카탈로그에서 모든 항목을 선택합니다

var products = xElem.Descendants("catalog") 
      .Select(x => new 
      { 
       ProductPrice= x.Element("Price").Value, 
       ProductName = x.Element("Name").Value 
      }); 

가 어떻게 위의 코드를 수정 않는 이름이 "ABC"와 "XYZ"를 포함하는 항목 만 선택? SQL에서는 LINQ를 사용하여 WHERE 등을 사용하고 싶습니다. 감사합니다. .

더 많은 정보

는 사실, 사용자가 유연하게 조회 할 수 있어야합니다. 따라서 사용자가 "빨간색 셔츠면"을 입력하면 "빨간색", "셔츠"및 "면"이라는 3 가지 용어가 모두 포함 된 모든 항목이 표시됩니다. "where"용어의 수는 고정되어 있지 않습니다.

답변

2
var products = from d in xElem.Descendants("catalog") 
       where d.Element("Name").Value.Contains("abc") 
        || d.Element("Name").Value.Contains("xyz") 
       select new { Name = d.Element("Name") .Value, 
          Price = d.Element("Price").Value 
          } 
; 
관련 문제