sql >> Databasteknik >  >> NoSQL >> MongoDB

Deserialisera objekt som ett gränssnitt med MongoDB C# Driver

Tja, jag har hittat många problem när jag försöker få det här svaret.

Först och främst har MongoDB C#-drivrutinen vissa problem när deserialisering av gränssnitt , som sagt av Craig Wilson i den här frågekommentaren, och som beskrivs på problemsidan .

Den säkra implementeringen för detta problem, som jag sa tidigare, kan verkligen vara en anpassad BSON-serializer eller en specifik klasskarta med BsonClassMap.RegisterClassMap .

Så jag har implementerat klasskartan och problemet kvarstod.

Jag ser fram emot problemet, jag har upptäckt att undantaget är relaterat till ett annat problem med drivrutinen:problemet vid avserialisering av structs .

Jag har återställt projektet till det ursprungliga tillståndet (utan klasskarta eller anpassade serialiserare) och ändrat strukturtypen till klasstyp, och det fungerade .

I CV är detta undantagsfel relaterat till strukturdeserialisering, inte med gränssnittsdeserialisering.

Hur som helst, det är ett verkligt problem, och den andra frågan måste betraktas mer som en bugg än en förbättring, som den första frågan är.

Du kan hitta problemen på dessa länkar:



  1. Meteor förbrukar ett stort antal Mongo-anslutningar

  2. Cosmos DB Aggregation Pipeline inkompatibel (Mongo API)?

  3. Redis sub/pub och php/nodejs

  4. NodeJS + Mongo - hur får man koll på innehållet?