ええと、この答えを得ようとすると、私は多くの問題を見つけました。
まず第一に、MongoDB C#ドライバーには、インターフェースを逆シリアル化するときにいくつかの問題があります。 、この質問のコメントでCraig Wilsonが言ったように、問題ページ> 。
前に述べたように、この問題の安全な実装は、実際には、BsonClassMap.RegisterClassMap
を使用したカスタムBSONシリアライザーまたは特定のクラスマップである可能性があります。 。
そのため、クラスマップを実装しましたが、問題は解決しませんでした。
問題を楽しみにして、例外がドライバーの別の問題に関連していることを発見しました:structs
を逆シリアル化するときの問題 。
プロジェクトを初期状態(クラスマップまたはカスタムシリアライザーなし)にロールバックし、構造体タイプをクラスタイプに変更しました。機能しました 。
再開すると、この例外エラーは、インターフェイスの逆シリアル化ではなく、構造体の逆シリアル化に関連しています。
とにかく、それは本当の問題であり、最初の問題のように、2番目の問題は改善よりもバグと見なす必要があります。
これらのリンクで問題を見つけることができます: