이것은이 여기 관련 주제에 대한 후속되는 https://stackoverflow.com/questions/1987485/conditionally-assign-c-var-as-elegant-as-it-get의조건부 var 유추 유형 쿼리 LINQ to XML에 대한 대체 코딩?
내가 뭐하는 거지 경우 다음
var query = (SearchString == "" ?
(
from MEDIA in xdoc.Descendants("MEDIA")
select new
{
PLAY = MEDIA.Element("PLAY").Value,
PIC = MEDIA.Element("PIC").Value,
TTL = MEDIA.Element("TTL").Value
}
):
from MEDIA in xdoc.Descendants("MEDIA")
where MEDIA.Element("TTL").ToString().ToLower().Contains(SearchString)
select new
{
PLAY = MEDIA.Element("PLAY").Value,
PIC = MEDIA.Element("PIC").Value,
TTL = MEDIA.Element("TTL").Value
}
) ;
을 어떻게 클래스 수준에서 정적 만들 수있는 쿼리 유형을 선언 할 것인가?
또는 마크 Gravell 지적 참조 된 게시물에 다른 접근 방식
IQueryable<Part> query = db.Participant;
if(email != null) query = query.Where(p => p.EmailAddress == email);
if(seqNr != null) query = query.Where(p => p.SequenceNumber == seqNr);
...
은 어떻게 선언합니다/내 경우에는 쿼리 재 코딩을? 가 여기 내 야생 시도입니다 :)
IEnumerable<XElement> query = xdoc.Descendants("MEDIA");
if (SearchString != "")
query = query.Where(m => m.Element("TTL").ToString().ToLower().Contains(SearchString));
감사합니다.