개요
일반 CLR 객체 또는 일반 이전 클래스 객체(POCO)는 프레임워크별 기본 클래스 또는 인터페이스의 기능을 상속하지 않는 간단한 클래스 객체입니다. 애플리케이션에서 POCO를 사용하는 경우 C# 분석기를 사용하여 JSON 객체로 미리 볼 수 있습니다.
POCO에 대해 자세히 학습 Wikipedia의 POCO 페이지 및 .NET/ C# 운전자 설명서의 POCO 작업 페이지를 참조하세요.
JSON으로 미리보기
다음 코드 샘플은 POCO 클래스 정의 및 해당 JSON 변환의 예를 보여줍니다. POCO를 JSON으로 미리 보면 BsonId
및 BsonElement
와 같은 BSON 직렬화 속성이 직렬화 중에 결과 BSON의 모양을 어떻게 변경하는지 확인할 수 있습니다.
class Order { [ ] public int OrderNumber { get; set; } [ ] public int CustomerId { get; set; } public string Date { get; set; } [ ] public string Email { get; set; } }
{ "_id": 6783456, "customer_id": 678234, "Date": "06/03/2023" }
팁
샘플 데이터
C# 분석기에는 특정 일반적인 속성 이름에 대해 미리 정의된 샘플 값이 포함되어 있습니다. POCO에서 이러한 속성 이름을 사용하는 경우 분석기는 JSON 출력의 샘플 값을 사용합니다. 사전 정의된 샘플 값이 없는 속성 이름의 경우 분석기는 속성의 데이터 유형과 일치하는 임의의 값을 사용합니다.
샘플 값이 포함된 속성 이름 목록은 MongoDB C# 분석기 GitHub 리포지토리의 JSON 샘플 값 파일 참조하세요.
Visual Studio에서 POCO 미리 보기
Visual Studio에서 POCO를 미리 보려면 다음 조치를 수행하세요.
C# Analyzer MongoDB C# Analyzer 설치 가이드 에 설명된 대로 를 설치합니다.
POCO 클래스를 정의합니다.
클래스 정의의 첫 단어 아래에 있는 ... 줄임표 주석 위로 커서를 가져가면 JSON 변환이 포함된 정보 메시지가 표시됩니다.
다음의 해당 탭을 클릭하면 정보 메시지가 표시되거나 되지 않은 POCO 클래스 정의를 볼 수 있습니다.
지원되지 않는 POCO
POCO 직렬화 설정이 올바르게 구성되지 않은 경우 C# 분석기는 MAPOCO2001
경고를 출력합니다.
다음 코드 스니펫에는 bool
데이터 유형 의 속성 에 [BsonTimeSpanOptions]
속성을 사용하는 POCO가 포함되어 있습니다.
public class NotSupportedPoco { [ ] public bool InStock { get; set; } }
다음 스크린샷은 주석이 달린 코드와 주석 위로 마우스를 가져가면 표시되는 경고를 보여줍니다.

팁
오류 목록 패널
Windows 용 Visual Studio를 사용하는 경우 오류 목록 창 에서 C# 분석기의 출력을 볼 수 있습니다.
자세한 학습 은 Microsoft 의 오류 목록 창을 참조하세요.