我可能在这里错过了一些明显的东西,但是…我试图使用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