Dette er grænseoverskridende at være en fejl i C#-driveren. Det viser sig, at IdMemberMap ikke er defineret, før klassekortet er "frosset", af årsager, der har at gøre med klassehierarkier, hvor Id'et faktisk kan være defineret i en basisklasse. En måde at omgå dette på er:
BsonClassMap.RegisterClassMap<Person>(cm => {
cm.AutoMap();
cm.Freeze();
cm.IdMemberMap.SetRepresentation(BsonType.ObjectId);
});
En anden måde at omgå på er at bruge GetMemberMap i stedet for IdMemberMap:
BsonClassMap.RegisterClassMap<Person>(cm => {
cm.AutoMap();
cm.GetMemberMap(c => c.Id).SetRepresentation(BsonType.ObjectId);
});