SQL의 ISNULL 함수에 해당하는 LINQ
질문:
동작을 어떻게 에뮬레이트할 수 있습니까? LINQ 쿼리에서 SQL의 ISNULL 함수는 무엇입니까? Null 값을 포함할 수 있는 Null을 허용하지 않는 열(bit 유형의 xx.Online)과 관련된 조인 쿼리를 고려해 보세요.
답변:
LINQ에서 Null 허용 값을 처리하려면 , aa 객체가 null인 경우 조건 연산자(? :)를 사용하여 기본값을 지정할 수 있습니다. 다음 코드는 이를 보여줍니다.
select new { AssetID = x.AssetID, Status = aa == null ? (bool?)null : aa.Online; // a Nullable<bool> }
aa가 null일 때 기본값을 false(null이 아닌)로 설정하려면 다음 코드를 사용할 수 있습니다.
select new { AssetID = x.AssetID, Status = aa == null ? false : aa.Online; }
추가 조사:
다음에 대해 null 값이 있는 조건부 연산자를 사용하는 것이 중요합니다. Null을 허용하지 않는 유형에는 명시적인 처리가 필요합니다. 제공된 예에서는 Nullable
ISNULL과 Null 병합 연산자를 비교하는 방법:
널 병합 연산자(??)는 ISNULL을 대체하는 데 직접 사용할 수 없습니다. ?? 연산자는 두 피연산자가 모두 null이 아닌 경우에만 null이 아닌 값을 반환합니다. 따라서 피연산자 하나가 null일 수 있는 상황을 처리하는 데는 적합하지 않습니다.
위 내용은 SQL의 ISNULL 함수를 LINQ로 바꾸는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!