(어떤==시스템입니다.이 변환은 지원.값)vs(는 모든이 시스템입니다.이 변환은 지원)

StackOverflow https://stackoverflow.com/questions/105671

  •  01-07-2019
  •  | 
  •  

문제

하나는 기본 설정을 확인하는 방법에는 경우 값이 DBNull?내가 찾는 이러한 두 가지 문을 내게 내가 원하는 결과를,하지만 단지 궁금해 있는 경우에 특혜?

if (any is System.DBNull)

과 같:

if (any == System.DBNull.Value)

감사합니다!

도움이 되었습니까?

해결책

if (any == System.DBNull.Value) ...

내가 선호하는 간단하기 때문에,내가 읽는 것으로 비교 가치,지 유형이 있다.

다른 팁

내가 사용하는 경향이

if (DBNull.Value.Equals(value)) {
    //
}

if (Convert.IsDBNull(value)) {
    //
}

is 리플렉션을 사용하지 않으로 Kevlar623 말한다.그것은 지도 isinst 작업에 IL.에는 수준으로 성과를 비교하는 것은 정말 바보 같은,당신이하지 않는 한 일에 미사일 가이드 시스템을 가지고 있습니다.

내가 사용하는 value is DBNull. 그것은 바로 소리와 같은 편집자,나는 믿을 수 없는 유일한 값에 존재입 DBNull.Value.버그를 발생.

는 경우에 당신은 c#을 사용해야 합니다 ==; is 리플렉션을 사용하여 더 비싼을 컴퓨팅,특히 있기 때문에만 하나의 인스턴스 System.DBNull.

내가 좋아하는"시스템입니다.이 변환은 지원"자기 때문에 나는 증오의 아이디어를 비교하는 뭔가가 NULL 이 사실이다.다른 많은 구문(무슨 일이 복수 그?) 는 것이 아무것도==NULL NULL 을 반환합니다.

내가 있다는 것을 이해의 이 변환은 지원.가치한 이유입니다.내가 알고있다.나는 목록을 나호)

이번에는 좋은 예의 양식을 다음과 같이 기능입니다.중 하나는 실행하는 더 효율적으로는 방법입니다.보는 것,읽기,또는 나쁜 이름 그것은 당신을 호출하는 관련이 없습니다.언어를 사용 효율적으로지 않는 형의 언어로 새로운 하나입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top