2017-04-04 2 views
0

개발 중이며 MVCEntity Framework입니다. 나는 이것을 좋아한다. MVC Entity Framework 선택 isnull 필드

IEnumerable<UploadSearch> viewModel = (from uploads in _db.Uploads 
 
      select new UploadSearch 
 
             { 
 
              Positives = uploads.Positives, 
 
             });

선택은 잘 작동합니다. 그것이하는 일을 너무 잘 설명 할 필요는 없습니다.

내가해야 할 일은, 검색 제로 (0), uploads.Positives 같은 필드가이

선택 ISNULL 같은

뭔가 null의 경우 (긍정적, 0)

어떻게해야합니까?

감사합니다 ..

+0

[?? 운영자 (C# 참조)] (https://msdn.microsoft.com/en-us/library/ms173224.aspx) –

답변

1

0을 원하는 경우, 당신은 무엇에 대해 얘기하는 것은, 오른쪽 int? (또는 Nullable<int>)입니다 ... 여기에 가정을 만들기?

조건부 연산에서 값이 있는지 확인할 수 있습니다. 뭔가 같은 :

select new UploadSearch 
{ 
    Positives = uploads.Positives.HasValue ? uploads.Positives : 0 
} 

또는, 당신은 명시 적으로 null를 확인할 수있는 LINQ 공급자가 .HasValue 또는 성격의 무언가를 좋아하지 않는 (또는 당신이 어떤 이유로 Nullable<T>를 사용하지 않는) 경우 :

LINQ 공급자가 ?? 연산자를 지원하는 경우
select new UploadSearch 
{ 
    Positives = uploads.Positives == null ? 0 : uploads.Positives 
} 

, 당신도 이런 일에 단축 할 수 있습니다

select new UploadSearch 
{ 
    Positives = uploads.Positives ?? 0 
}