Při pokusu o získání této odpovědi jsem našel spoustu problémů.
Za prvé, MongoDB C# Driver má určité problémy při deserializaci rozhraní , jak řekl Craig Wilson v komentářích k této otázce a jak je popsáno na stránce problému .
Bezpečnou implementací tohoto problému, jak jsem již řekl dříve, může být ve skutečnosti vlastní serializátor BSON nebo konkrétní mapa tříd pomocí BsonClassMap.RegisterClassMap
.
Implementoval jsem tedy mapu tříd a problém přetrvává.
Když se na problém těším, zjistil jsem, že výjimka souvisí s jiným problémem ovladače:problémem při deserializaci structs
.
Vrátil jsem projekt do počátečního stavu (bez mapy tříd nebo vlastních serializátorů) a změnil typ struktury na typ třídy, a fungovalo to .
V resumé se tato chyba výjimky týká deserializace struktur, nikoli deserializace rozhraní.
Každopádně je to skutečný problém a druhý problém je třeba považovat spíše za chybu než za vylepšení, jako je ten první.
Problémy můžete najít na těchto odkazech: