2010-06-22 6 views
10

나는 다음과 같습니다과 오른쪽 지금은이 해달라고하면 기존 수집은 가능한 익명의 유형에 조건부 필드가하는 것입니다

var items = items.ConvertAll(r => new 
      { 
       description = FormatDescription(r), 
       start = r.Milestone.HasValue ? r.Milestone.Value.ToString("yyyy-MM-ddTHH:mm:ssZ") : DateTime.Today.ToString("yyyy-MM-ddTHH:mm:ssZ"), 
       classname = "significance" + r.SignificanceLevel, 

당신이 볼 수 있듯이에서 목록을 만듭니다 몇 가지 코드를 시작일 (r.Milestone)을 입력 한 다음 오늘 날짜를 입력합니다.

  1. 내가 값을 가지고 있겠지 경우 r.Milestone.Hasvalue가 해당 날짜를 보여주는 경우가 전혀 익명 형식의 시작 날짜 필드를 해달라고 : 난 정말 말 경우 수행 할 작업.

이 유형의 코드에서 필드를 모두 제거 할 수있는 조건부 논리를 사용할 수 있습니까?

+0

@Will Eddins - 이것을 null로 설정하면 필드를 계속 보내지 않을까요? 가치가 없다면 기존의 것에서라도 그 필드를 제거하고 싶습니다. – leora

답변

8

아니요, 대부분 다른 실행에서 익명의 클래스를 다르게 만들고 클래스를 유형 검사 할 수 없기 때문에 불가능합니다.

시작 날짜를 기본값 대신 null로 설정하고 나중에 코드에서 확인하는 것이 좋습니다.