Когда вы вставляете объект, если у него нет поля _id
, драйвер добавляет его и устанавливает для него 12-байтовое значение MongoDB ObjectId .
Вам просто нужно добавить свойство Id
в POCO, которое будет десериализовано с _id
:
public class Thingy
{
public ObjectId Id { get; set; }
}
Или, если вы хотите делегировать другое свойство для сопоставления на _id
, вы можете украсить его с помощью BsonIdAttribute
, например:
[BsonId]
public ObjectId MyKey { get; set; }
Поле _id
не обязательно должно быть MongoDB ObjectId
, вы можете установить для него любое значение любого типа данных (кроме массива), оно просто должно быть уникальным в коллекции.