2012-08-10 4 views
-3

net. 나는 의심 스럽다. LINQ 쿼리의 where 절에서 매개 변수로 사용자 정의 변수를 소개하려면 어떻게해야합니까? XML 파일을 쿼리하고 있습니다. 여기에 내 코드 대신 harcoding의LINQ에서 매개 변수 사용

XElement books = XElement.Load(@"Friends.xml"); 

var titles = 
    from book in books.Elements("Friend") 
    where (string)book.Element("Date") == "27" && (string)book.Element("Month") == "05" 
    select book.Element("Name"); 

foreach (var title in titles) 
    Console.WriteLine(title.Value); 

27 값과 05, 나는 그들을 사용하는 instead.How 변수를 사용하려면 무엇입니까?

멍청한 질문에 사과드립니다. 문제를 오해했습니다. 실제로 달력의 특정 날짜를 차단하고 있습니다. 현재는

private void calendar1_SelectedDatesChanged(object sender, SelectionChangedEventArgs e) 
     {....} 

은 차단되지 않은 날짜에만 사용할 수 있습니다. 변수로 시도한 특정 날이 차단 된 날부터 작동하지 않았습니다. 이제 제게 이것에 대한 해결책을 제안하십시오. 필요한 것은 날짜 (클릭 차단 또는 비 차단)를 클릭하면 이벤트를 실행해야합니다. 어떤 이벤트를 사용해야합니까 ??

+0

정말요? 변수를 사용해 보셨습니까? – sloth

+0

귀하의 편집은 완전히 다른 질문입니다. 당신은 다른 질문을해야합니다. –

답변

2

사용 단순 변수 :

XElement books = XElement.Load(@"Friends.xml"); 
string yourDate = "27"; 
string yourMonth = "05"; 

var titles = 
    from book in books.Elements("Friend") 
    where (string)book.Element("Date") == yourDate && (string)book.Element("Month") == yourMonth 
    select book.Element("Name"); 

foreach (var title in titles) 
    Console.WriteLine(title.Value); 

등등. 물론 코드와 시스템에 따라 읽을 수있는 좋은 이름을 사용하십시오.

0

또한 적절한 속성을 가진 책 클래스를 XML 태그로 정의 할 수 있다고 생각합니다. 예 :

class Book { 
    string Date {...} // 
} 

XML 파일을 읽을 때 매우 쉽습니다. 또한 XML 파일을 실행하는 자체 트리 구조를 작성하는 것이 좋습니다.