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 должен работать аналогично?