Quando inserisci un oggetto, se non ha un _id
campo quindi il driver ne aggiunge uno e lo imposta su un valore MongoDB ObjectId a 12 byte.
Devi solo aggiungere un Id
proprietà al tuo POCO, che verrà deserializzato da _id
:
public class Thingy
{
public ObjectId Id { get; set; }
}
Oppure, se desideri delegare un'altra proprietà per la mappatura su _id
quindi puoi decorarlo con il BsonIdAttribute
, in questo modo:
[BsonId]
public ObjectId MyKey { get; set; }
Il _id
il campo non deve essere un ObjectId
MongoDB , puoi impostarlo su qualsiasi valore di qualsiasi tipo di dati (tranne un array), deve solo essere univoco all'interno della raccolta.