Azure CosmosDB - 如何创建 DocumentClient(它是内部的)?



我可能在这里错过了一些明显的东西,但是…我试图使用DocumentClient.UpsertDocumentAsync(…)来插入CosmosDB。问题是,我不能创建DocumentClient,因为它被标记为"内部类"。到目前为止,我所看到的所有示例都指向这样做。

例如:

var docClient = new Microsoft.Azure.Cosmos.DocumentClient(
new Uri("..."), 
"...",
null,
null);

这会产生IDE错误"无法在这里访问内部类'DocumentClient'",因为它是一个内部类。这在最新版本中可能有所改变吗?

这是反编译的签名:

namespace Microsoft.Azure.Cosmos
{
...
internal partial class DocumentClient : IDisposable, 
IAuthorizationTokenProvider, 
ICosmosAuthorizationTokenProvider, 
IDocumentClient, 
IDocumentClientInternal
...

我正在使用最新的Nuget包(v3.27.0发布于5/6/2022)的Microsoft.Azure.Cosmos

您不需要访问DocumentClient,它是一个内部类。它不被任何公共表面操作使用,您不需要它与V3 SDK交互。

请参阅官方示例:https://learn.microsoft.com/azure/cosmos-db/sql/sql-api-dotnet-v3sdk-samples#item-examples

如果您要从V2 SDK迁移到V3,请参阅迁移指南:https://learn.microsoft.com/azure/cosmos-db/sql/migrate-dotnet-v3

最新更新