.NET을 사용하여 Azure Cosmos DB for Table 시작

적용 대상: 테이블

이 문서에서는 .NET SDK를 사용하여 Azure Cosmos DB for Table에 연결하는 방법을 보여 줍니다. 연결되면 테이블 및 항목에 대한 작업을 수행할 수 있습니다.

패키지(NuGet) | 샘플 | API 참조 | 라이브러리 소스 코드 | 피드백 제공 |

필수 조건

프로젝트 설정

.NET 콘솔 애플리케이션 만들기

console 템플릿에서 dotnet new 명령을 사용하여 새 .NET 애플리케이션을 만듭니다.

dotnet new console

dotnet add package 명령을 사용하여 Azure.Data.Tables NuGet 패키지를 가져옵니다.

dotnet add package Azure.Data.Tables

dotnet build 명령을 사용하여 프로젝트를 빌드합니다.

dotnet build

Azure Cosmos DB for Table에 연결

Azure Cosmos DB의 API for Table에 연결하려면 TableServiceClient 클래스의 인스턴스를 만듭니다. 이 클래스는 테이블에 대한 모든 작업을 수행하기 위한 시작점입니다. TableServiceClient 클래스를 사용하여 API for Table 계정에 연결하는 두 가지 기본 방법이 있습니다.

연결 문자열로 연결

TableServiceClient에 대한 가장 일반적인 생성자에는 단일 매개 변수가 있습니다.

매개 변수 예제 값 설명
connectionString COSMOS_CONNECTION_STRING환경 변수 API for Table 계정에 대한 연결 문자열

계정 연결 문자열 검색

  1. az cosmosdb list 명령을 사용하여 리소스 그룹에서 첫 번째 Azure Cosmos DB 계정의 이름을 검색하여 accountName 셸 변수에 저장합니다.

    # Retrieve most recently created account name
    accountName=$(
        az cosmosdb list \
            --resource-group $resourceGroupName \
            --query "[0].name" \
            --output tsv
    )
    
  2. az-cosmosdb-keys-list 명령을 사용하여 계정에 대한 연결 문자열 목록에서 PRIMARY CONNECTION STRING을 찾습니다.

    az cosmosdb keys list \
        --resource-group $resourceGroupName \
        --name $accountName \
        --type "connection-strings" \
        --query "connectionStrings[?description == \`Primary Table Connection String\`] | [0].connectionString"
    

.NET 코드 내에서 기본 연결 문자열 값을 사용하려면 이 값을 애플리케이션을 실행하는 로컬 컴퓨터의 새 환경 변수에 유지합니다.

$env:COSMOS_CONNECTION_STRING = "<cosmos-account-PRIMARY-CONNECTION-STRING>"

연결 문자열을 사용하여 TableServiceClient 만들기

COSMOS_CONNECTION_STRING 환경 변수를 유일한 매개 변수로 사용하여 TableServiceClient 클래스의 새 인스턴스를 만듭니다.

// New instance of TableServiceClient class using a connection string
TableServiceClient client = new(
    connectionString: Environment.GetEnvironmentVariable("COSMOS_CONNECTION_STRING")!
);

애플리케이션 빌드

애플리케이션을 빌드할 때 코드는 주로 다음 4가지 종류의 리소스와 상호 작용합니다.

  • API for Table 계정 - Azure Cosmos DB 데이터에 대한 고유한 최상위 네임스페이스입니다.

  • 테이블- 계정의 개별 항목 세트를 포함합니다.

  • 항목 - 테이블의 개별 항목을 나타냅니다.

다음 다이어그램에서는 리소스 간의 관계를 보여줍니다.

Diagram of the Azure Cosmos DB hierarchy including accounts, tables, and items.

맨 위에 있는 Azure Cosmos DB 계정을 보여 주는 계층 다이어그램. 계정에는 두 개의 자식 테이블 노드가 있고, 테이블 노드 중 하나에는 두 개의 자식 항목이 포함되어 있습니다.

각 리소스 종류는 하나 이상의 연결된 .NET 클래스 또는 인터페이스로 표시됩니다. 가장 일반적인 종류의 목록은 다음과 같습니다.

클래스 설명
TableServiceClient 이 클라이언트 클래스는 Azure Cosmos DB 서비스에 대한 클라이언트 쪽 논리적 표현을 제공합니다. 이 클라이언트 개체는 서비스에 대한 요청을 구성하고 실행하는 데 사용됩니다.
TableClient 이 클라이언트 클래스는 아직 서비스에 있거나 없을 수도 있는 테이블에 대한 참조입니다. 테이블에 액세스하거나 이에 대한 작업을 수행하려고 하면 서버 쪽에서 테이블의 유효성이 검사됩니다.
ITableEntity 이 인터페이스는 테이블에 만들어지거나 테이블에서 쿼리되는 모든 항목에 대한 기본 인터페이스입니다. 이 인터페이스는 API for Table의 항목에 대한 모든 필수 속성을 포함합니다.
TableEntity 이 클래스는 ITableEntity 인터페이스의 제네릭 구현이며 키-값 쌍의 사전입니다.

다음 가이드에서는 이러한 각 클래스를 사용하여 애플리케이션을 빌드하는 방법을 보여 줍니다.

가이드 설명
테이블 만들기 테이블 만들기
항목 만들기 항목 만들기
항목 읽기 항목 읽기

참고 항목

다음 단계

이제 API for Table 계정에 연결했으므로 다음 가이드를 사용하여 테이블을 만들고 관리합니다.