2010-06-25 2 views
1

LINQ를 사용하여 특정 값 을 검색하려면 어떻게해야합니까? URL = "localhoist" 조건에 nx 특성이 지원됩니까? 고맙습니다. 이처럼XML 질문이있는 LINQ

<SomeSetting> 
    <Setting URL="abc.com" Supported="sb.new,mgrsma" /> 
    <Setting URL="localhost" Supported="GG,LLmgrsma,FF1,FF3" /> 
    <Setting URL="def.zxy.com" Supported="xyz" /> 
</SomeSetting> 

답변

4

: 한 번에

var localhost = doc.Descendants("Setting") 
        .Where(x => (string) x.Attribute("URL") == "localhost") 
        .Select(x => (string) x.Attribute("Supported")) 
        .FirstOrDefault(); 

한 줄 :

  • 먼저 모든 "설정"요소를 선택; someSetting.Elements("Setting")을 사용하여이 작업을 수행 할 수도 있습니다. 여기서 요소 인 경우
  • localhost URL이없는 요소를 필터링하려면 where 절을 추가하십시오. 특성이없는 요소를 처리 할 수 ​​있도록 Value 속성 대신 명시 적 문자열 변환을 사용하고 있습니다. 이 경우 변환은 null을 반환합니다.
  • Supported 속성 값을 선택하십시오. 다시 URL=localhost 요소에 Supported 속성이 없으면 null을 반환합니다.
  • 첫 번째 결과를 선택하거나 결과가 없으면 null을 반환합니다. 요소가 여러 개있을 수 있으며 모든 요소를 ​​검사하려면이 호출을 제거하십시오.