클래스 디자이너에서 Nullable 형식 만들기
특정 값 형식에 항상 정의된 값이 포함되거나 필요한 것은 아닙니다. 이는 일부 필드에 값이 할당되지 않을 수 있는 데이터베이스에서 일반적인 경우입니다. 예를 들어 데이터베이스 필드에 null 값을 할당하여 아직 값이 할당되지 않았음을 나타낼 수 있습니다.
Nullable 형식은 해당 형식에 대한 일반적인 값 범위 및 null 값도 사용하도록 확장하는 값 형식입니다. Nullable<Int32>라고도 하는 Int32
의 null 허용에는 -2147483648에서 2147483647 사이의 값이 할당되거나 null 값이 할당될 수 있습니다. Nullable<bool>에는 True
, False
또는 null(값이 전혀 없음) 값이 할당될 수 있습니다.
Nullable 형식은 Nullable<T> 구조체의 인스턴스입니다. Nullable 형식의 각 인스턴스에는 두 개의 public 읽기 전용 속성 HasValue
및 Value
가 포함됩니다.
HasValue
는bool
형식이고 변수에 정의된 값이 포함되는지 여부를 나타냅니다.True
는 변수에 null이 아닌 값이 포함됨을 의미합니다.if (x.HasValue)
또는if (y != null)
등의 문을 사용하여 정의된 값을 테스트할 수 있습니다.Value
는 기본 형식과 같은 형식입니다.HasValue
가True
이면Value
에는 의미 있는 값이 포함됩니다.HasValue
가False
일 경우Value
에 액세스하면 잘못된 작업 예외가 throw됩니다.
기본적으로 변수를 nullable 형식으로 선언하면 기본 값 형식의 기본값 외에 정의된 값(HasValue
가 False
임)이 포함되지 않습니다.
클래스 디자이너에는 nullable 형식이 기본 형식이 표시되는 것처럼 표시됩니다.
C#의 nullable 형식에 대한 자세한 내용은 Nullable 형식을 참조하세요. Visual Basic의 nullable 형식에 대한 자세한 내용은 Nullable 값 형식을 참조하세요.
참고 항목
이 문서의 일부 Visual Studio 사용자 인터페이스 요소에 대한 다른 이름 또는 위치가 컴퓨터에 표시될 수 있습니다. 다른 버전의 Visual Studio 또는 다른 환경 설정을 사용 중일 수 있습니다. 자세한 내용은 IDE 개인 설정을 참조하세요.
클래스 디자이너를 사용하여 nullable 형식을 추가하려면
클래스 다이어그램에서 기존 클래스를 확장하거나 새 클래스를 만듭니다.
프로젝트에 클래스를 추가하려면 클래스 다이어그램 메뉴에서 추가>클래스 추가를 클릭합니다.
클래스 모양을 확장하려면 클래스 다이어그램 메뉴에서 확장을 클릭합니다.
클래스 모양을 선택합니다. 클래스 다이어그램 메뉴에서 추가>필드를 클릭합니다. 기본 이름 필드가 포함된 새 필드가 클래스 모양 및 클래스 세부 내용 창에 나타납니다.
클래스 세부 내용 창의 이름 열(또는 클래스 모양 자체)에서 새 필드의 이름을 유효하고 의미 있는 이름으로 변경합니다.
클래스 세부 내용 창의 형식 열에서 다음을 지정하여 형식을 nullable 형식으로 선언합니다.
int?
(Visual C#)Nullable(Of Integer)
(Visual Basic)
코드 편집기를 사용하여 nullable 형식을 추가하려면
프로젝트에 클래스를 추가합니다. 솔루션 탐색기에서 프로젝트 노드를 선택하고 프로젝트 메뉴에서 클래스 추가를 클릭합니다.
새 클래스에 대한 .cs 또는 .vb 파일에서 새 클래스의 nullable 형식 하나 이상을 클래스 선언에 추가합니다.
클래스 뷰에서 새 클래스 아이콘을 클래스 디자이너 디자인 화면으로 끌어서 놓습니다. 클래스 모양이 클래스 다이어그램에 나타납니다.
클래스 모양에 대한 세부 정보를 확장하고 마우스 포인터를 클래스 멤버 위로 이동합니다. 도구 설명에 각 멤버의 선언이 표시됩니다.
클래스 모양을 마우스 오른쪽 단추로 클릭하고 클래스 세부 내용을 클릭합니다. 클래스 세부 내용 창에서 새 형식의 속성을 보거나 수정할 수 있습니다.
관련 콘텐츠
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기