Я создал базу данных в Azure: Azure Cosmos DB.
При создании базы данных я выбрал группу ресурсов, задал имя учетной записи, API: выбрал `Azure COSMOS DB для API MongDB, дал остальные необходимые данные и создал учетную запись в БД.
После создания учетной записи в БД я добавил в нее БД abc-test
и добавил коллекцию abc-test-col
.При создании коллекции я дал ключ шарда как id
.
Теперь я создал консольное приложение для проверки подключения и записи некоторого значения в базу данных. Это код, который я написал.
class Program
{
static void Main(string[] args)
{
try
{
Console.WriteLine("Start Execution");
Program p = new Program();
IMongoCollection<CollectionData> collection = p.GetCollection();
CollectionData cd = new CollectionData();
cd.id = Guid.NewGuid().ToString();
cd.Value = 100;
Task insertjob = collection.InsertOneAsync(cd);
insertjob.Wait(); // exception raised here
Console.WriteLine("Inserted data");
Console.ReadLine();
}
catch(Exception ex)
{
Console.WriteLine("Exception : " + ex.Message);
}
}
private IMongoCollection<CollectionData> GetCollection()
{
try
{
string mongDBName = "abc-test";
IMongoDatabase database;
string collectionName = "abc-test-col";
string connectionString = "Connection String"; // Copied the primary connection string.
MongoClientSettings settings = MongoClientSettings.FromUrl(
new MongoUrl(connectionString)
);
settings.SslSettings =
new SslSettings() { EnabledSslProtocols = SslProtocols.Tls12 };
var mongoClient = new MongoClient(settings);
database = mongoClient.GetDatabase(mongDBName);
return database.GetCollection<CollectionData>(collectionName);
}
catch (Exception ex)
{
throw;
}
}
}
Когда я запускаю это, яполучение исключения
Произошла одна или несколько ошибок.(Ошибка вставки команды: документ не содержит ключ шарда.)
Я добавил id
в мои CollectionData, но все же он дает это исключение.
Любая помощь в том, почему это таквыдает эту ошибку. Я что-то упустил
Любая помощь в этом вопросе будет очень полезна.