如果容器在数据库中不存在,CreateContainerIfNotExistsAsync将引发状态代码为“错误请求”的异常。如果容器在数据库中存在,则不会引发异常。有人能告诉我为什么会发生这种情况吗?
(Hid用于在线发布的URL和键)
using Microsoft.Azure.Cosmos;
using Microsoft.Azure.Cosmos.Linq;
using System.Threading.Tasks;
namespace CosmosDB // Note: actual namespace depends on the project name.
{
class Program
{
public static async Task Main(string[] args)
{
var cosmosUrl = "###########################";
var cosmoskey = "###########################";
var databaseName = "TestDB";
// var containerId = "ToDo";
CosmosClient client = new CosmosClient(cosmosUrl, cosmoskey);
Database database = await client.CreateDatabaseIfNotExistsAsync(databaseName);
Container container = await database.CreateContainerIfNotExistsAsync(
id: "ToDoList",
partitionKeyPath: "/category",
throughput: 100
);
}
}
}
1条答案
按热度按时间62o28rlo1#
命令失败,因为您的输入无效。吞吐量必须是介于400和10,000 RU/s之间的值(对于普通数据库或容器),由于您使用的是100,因此将引发异常错误。
如果容器已经存在,则不会发生该错误,因为它不会检查(服务器端)或更新吞吐量。
编辑:关于服务限制的Link to Microsoft文档。Link to Microsoft REST API(由SDK使用)。