2014-01-09 2 views
0

XML을 파싱하고 XML에서 선택된 태그 값을 가져 와서 List에 저장하고 있습니다. 그런 다음이 값을 gridview에 표시하려고합니다. 그러나 "IF"조건 루프 내에서 이러한 값을 여러 값과 비교하는 방법은 무엇입니까?if 문 안의 문자열 목록을 반복하고 비교하는 방법

protected List<QueueListItems> GetQueueDetails(string xmlfile) 
{ 
    var listofitems = new List<QueueListItems>(); 

    XmlDocument xdoc = new XmlDocument(); 
    xdoc.Load(xmlfile); 
    // XmlNodeList itemnodes = xdoc.SelectNodes("//PublisherProperty/Name"); 
    XmlNodeList itemnodes = xdoc.GetElementsByTagName("PublisherProperty"); 
    foreach (XmlElement node in itemnodes) 
    { 
     if (node.FirstChild.InnerText = "Channel" || "QueueManager" || "QueueServer" || "QueueName") 
      { 
       listofitems.Add(new QueueListItems() 
       { 
        Text = node.FirstChild.InnerText, 
        Value = node.FirstChild.NextSibling.InnerText 
       }); 
      } 
     } 
     return listofitems; 
    } 

내 XML은 다음과 같다 : -

'<'PublisherProperty'>''<br/> 
'<'Name'>'Channel'<'/Name'>'<br/> 
'<'Value'>'943'<'/Value'>'<br/> 
'<'PublisherID'>'PUBLISHER'<'/PublisherID'>'<br/> 
'<'/PublisherProperty'>'<br/> 
'<'PublisherProperty'>'<br/> 
'<'Name'>'Queue'<'/Name'>'<br/> 
'<'Value'>'q123'<'/Value'>'<br/> 
'<'PublisherID'>'PUBLISHER'<'/PublisherID'>'<br/> 
'<'/PublisherProperty'>'<br/> 
'<'PublisherProperty'>'<br/> 
'<'Name'>'QueueServer'<'/Name'>'<br/> 
'<'Value'>'U4VMMQSIT02'<'/Value'>'<br/> 
'<'PublisherID'>'PUBLISHER'<'/PublisherID'>'<br/> 
'<'/PublisherProperty'>'<br/> 
'<'PublisherProperty'>'<br/> 
'<'Name'>'QueueName'<'/Name'>'<br/> 
'<'Value'>'SIT</Value'>'<br/> 
'<'PublisherID'>'PUBLISHER'<'/PublisherID'>'<br/> 
'<'/PublisherProperty'>'<br/> 
'<'PublisherProperty'>'<br/> 
'<'Name'>'QueuePort'<'/Name'>'<br/> 
'<'Value'>'2454'<'/Value'>'<br/> 
'<'PublisherID'>'PUBLISHER'<'/PublisherID'>'<br/> 
'<'/PublisherProperty'>'<br/> 
'<'PublisherProperty'>'<br/> 
'<'Name'>'QueueWaitInterval'<'/Name'>'<br/> 
'<'Value'>'-1'<'/Value'>'<br/> 
'<'PublisherID'>'PUBLISHER'<'/PublisherID'>'<br/> 
'<'/PublisherProperty'>'<br/> 
'<'PublisherProperty'>'<br/> 
'<'Name'>'Exception</Name'>'<br/> 
'<'Value'>'9501</Value'>'<br/> 
'<'PublisherID'>'PUBLISHER'<'/PublisherID'>'<br/> 
'<'/PublisherProperty'>'<br/> 
'<'PublisherProperty'>'<br/> 
'<'Name'>'ExceptionText'<'/Name'>'<br/> 
'<'Value'>' Error'<'/Value'>'<br/> 
'<'PublisherID'>'PUBLISHER '<'/PublisherID'>'<br/> 
'<'/PublisherProperty'>'<br/> 
'<'PublisherProperty'>'<br/> 
'<'Name'>'MsgElement'<'/Name'>'<br/> 
'<'Value'>'null</Value'>'<br/> 
'<'PublisherID'>'PUBLISHER'<'/PublisherID'>'<br/> 
'<'/PublisherProperty'>'<br/> 

답변

1

당신은 컬렉션을 구성하고 거기에 있는지 볼 수 있습니다.

if (new[] { "Channel", "QueueManager", "QueueServer" , "QueueName" }.Contains(node.FirstChild.InnerText)){ } 
관련 문제