在 Windows 應用程式中使用 Cosmos DB 資料庫
本文包含從 Windows 應用程式啟用使用 Cosmos DB 資料庫所需的步驟。 其中也包含小型的程式碼片段,顯示您在程式碼中與資料庫互動的方式。
設定您的解決方案
此範例可與任何 WPF、Windows Forms、WinUI 3 和 UWP 專案搭配使用,以將 Windows 應用程式連線到 Cosmos DB 資料庫。 請遵循下列步驟來安裝封裝,並試用一些基本工作的範例程式碼。
- 開啟 [套件管理員主控台] ([檢視] -> [其他 Windows]-> [套件管理員主控台])。 使用命令
Install-Package Microsoft.Azure.Cosmos
安裝適用於 .NET 之 Azure Cosmos DB for NoSQL 用戶端程式庫的 NuGet 封裝。 這可讓您以程式設計方式存取 Cosmos DB 資料庫。 - 建置您的專案,並確定建置成功且沒有任何錯誤。
接下來,您必須在 Azure 中建立 Cosmos DB 執行個體。 您可以遵循 [在 Azure Cosmos DB 中建立 NoSQL 資料庫帳戶] 中的步驟以執行此動作。
透過範例程式碼使用 Cosmos DB
下列範例程式碼會從 Azure 中的 Cosmos DB 執行個體取得容器,然後將新項目新增至該容器。 然後它會使用 Cosmos DB 的 NoSQL 查詢 API,從容器擷取項目,並輸出回應狀態。 請注意,您必須根據您在上一區段中建立的 Cosmos DB 執行個體來自訂端點、驗證金鑰和資料庫名稱。
注意
如需完整範例,包括必要的 Cosmos DB 安裝和設定的相關資訊,請參閱 使用適用於 NoSQL 的 Azure Cosmos DB 開發 .NET 主控台應用程式。
using Microsoft.Azure.Cosmos;
...
public async Task CosmosSample(string endpoint, string authKey)
{
// CONNECT
var client = new CosmosClient(
accountEndpoint: endpoint,
authKeyOrResourceToken: authKey
);
Database database = client.GetDatabase("sample_customers");
ContainerProperties properties = new(
id: "customers",
partitionKeyPath: "/location"
);
Container container = await database.CreateContainerIfNotExistsAsync(properties);
// WRITE DATA
string customerId = "1234";
string state = "WA";
var customer = new
{
id = customerId,
name = "John Doe",
location = state
};
var createResponse = await container.CreateItemAsync(customer);
Console.WriteLine($"[Status code: {createResponse.StatusCode}]\t{customerId}");
// READ DATA
string sql = "SELECT * FROM customers c WHERE c.id = @id";
var query = new QueryDefinition(
query: sql
).WithParameter("@id", customerId);
using var feed = container.GetItemQueryIterator<dynamic>(queryDefinition: query);
var queryResponse = await feed.ReadNextAsync();
Console.WriteLine($"[Status code: {queryResponse.StatusCode}]\t{customerId}");
}