sql >> Base de Datos >  >> NoSQL >> MongoDB

cómo administrar el campo _id cuando se usa POCO con el controlador mongodb c #

Cuando inserta un objeto, si no tiene un _id el controlador agrega uno y lo establece en un valor de ObjectId de MongoDB de 12 bytes.

Solo necesita agregar un Id propiedad a su POCO, que se deserializará de _id :

public class Thingy
{
     public ObjectId Id { get; set; }
}

O, si desea delegar otra propiedad para asignarla a _id luego puedes decorarlo con el BsonIdAttribute , así:

[BsonId]
public ObjectId MyKey { get; set; }   

El _id el campo no tiene que ser un MongoDB ObjectId , puede establecerlo en cualquier valor de cualquier tipo de datos (excepto una matriz), solo necesita ser único dentro de la colección.