6
MongoDBの最新のC#ドライバを使用しています。私はキャメルケースにシリアル化するために私のプログラムに次のコードを追加しました:Camelcaseコンベンションパックを追加した後の逆シリアル化エラー
var camelCaseConvention = new ConventionPack { new CamelCaseElementNameConvention() };
ConventionRegistry.Register("CamelCase", camelCaseConvention, type => true);
シリアライズを使用した後、文書を照会しようとしたときしかし、私は問題を取得します。例えば:
var query = _collection.AsQueryable<TimeSeries>();
Console.WriteLine(query.ToJson());
は、以下を返す:
{ "_id" : ObjectId("54af0e848c27be15fc47a0d9"), "Name" : null, "Time" : null }
すなわち、すべてのプロパティは、ID以外ヌルであると思われます。
フィールド名がラクラク(「名前」と「時間」)で、各ドキュメントに正しいデータ(「名前」:テスト1」と「時刻」:2014)が正しくシリアル化されています。
問題は、クエリ機能は、フィールドはキャメルケースであり、したがって、nullを返すことを認識しないということであるように思える。したがって、私は、任意のオブジェクトをデシリアライズすることができません。
このエラーを回避する方法はありますか?
タイトルを編集しました。 「[質問には「タイトル内に「タグ」を含める必要がありますか」(http://meta.stackexchange.com/questions/19190/)」を参照してください。コンセンサスは「いいえ、そうすべきではありません」です。 –