C# MongoDB. не генерируется новый Guid при вставке документа с пустым Guid

Хочу вставить новый документ (с пустым Guid) или обновить текущий документ (Guid задан). и вернуть Guid нового документа или обновленного.

public class Car 
{
    public Guid Id { get; set; }
    public string Name { get; set; }
}   

//вариант 1

var result= await _collection.ReplaceOneAsync(c => c.Id == car.Id, car, new ReplaceOptions {IsUpsert = true});

//варианта 2

var filter = Builders<Car>.Filter.Where(c => c.Id == car.Id);
var options = new FindOneAndReplaceOptions<Car, Car>
{
    IsUpsert = true,
    ReturnDocument = ReturnDocument.After
};
var updatedEntity = await _collection.FindOneAndReplaceAsync(filter, car, options);

В обоих вариантах вставляется новый car с пустым Guid.

Я конечно могу использовать _collection.InsertOneAsync(....) для пустых Guid, но вроде как ReplaceOneAsync должен работать аналогично?


Ответы (0 шт):