2014-01-22 6 views
0

내 쿼리의 결과 개체를 만드는 오전의 SELECT NEW 부분에 무언가를 다른 값을 전달 :이처럼 LINQ 쿼리

나는이 쿼리 및 SELECT NEW에 도착하기 전에 몇 가지 조건에 따라
var result = from m in MyTable 
      join r in some_more_tables 
      select new ResultSummmary 
      { 
        Description = m.Description, 
        start_date = r.start_dat 
      }; 

하지만, 나는 Description 파일에 넣었던 것을 구부릴 수 있기를 원합니다. 현재는 항상 m.Description입니다. 그러나 때로는 "병원"과 같은 정적 텍스트가되고 싶고 나머지 시간은 내가 원하는대로 m.Description이되기를 원합니다. .

어떻게 유연하게 작성할 수 있습니까?

답변

2

조건이 condition이라는 변수에 저장되어 있다고 가정합니다. 이렇게하면 다음과 같이 쓸 수 있습니다.

var result = from m in MyTable 
     join r in some_more_tables 
     select new ResultSummmary 
     { 
       Description = condition ? m.Description : "Hospital", 
       start_date = r.start_dat 
     }; 
1
select new ResultSummmary 
      { 
        Description = someBool ? m.Description : "Hospital", 
        start_date = r.start_dat 
      };