У меня есть консольное приложение, которое использует библиотеку Microsoft.Azure.DocumentDB.Core и библиотеку Microsoft.Azure.Cosmos.Table. В пространстве имен Microsoft.Azure.Cosmos есть перечисление с именем ConsistencyLevel, которое выдает ошибки о неоднозначной ссылке.
Я не знаю, есть ли хорошее решение для этого, так как сейчас CosmosClient для Core SQL должен установить это.
Планирует ли Microsoft исправить эту проблему, поскольку она ограничивает разработчика от использования обеих библиотек в одном проекте? С точки зрения кода, у меня есть метод, пытающийся создать нового клиента в DocumentDb SDK.
public void Initialize(int maxConnections)
{
this.client = new CosmosClient(this.config.Uri, this.config.AuthKey,
new CosmosClientOptions()
{
MaxRetryAttemptsOnRateLimitedRequests = 9,
MaxRetryWaitTimeOnRateLimitedRequests = TimeSpan.FromSeconds(15),
ApplicationRegion = Regions.EastUS2,
ConnectionMode = ConnectionMode.Direct,
ConsistencyLevel = ConsistencyLevel.Eventual
});
this.container = this.client.GetContainer(this.config.DatabaseName, this.config.ContainerName);
}
Ошибка:
Severity Code Description Project File Line Suppression State
Error CS0433 The type 'ConsistencyLevel' exists in both 'Microsoft.Azure.Cosmos.Client, Version=3.3.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' and 'Microsoft.Azure.Cosmos.Table, Version=1.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' DataLoader C:\Source\Repos\poc\DataLoader\CosmosSdkv3Context.cs 69 Active