複数フィールドの「個別の」クエリを実行しようとしていますが、これはもちろん不可能です
(ここで私の試みを参照してください: linq クエリから新しい型を選択する)
これに気付いた後、MongoDB で .group を使用することにより、必要なデータを取得できることがわかりました。
MongoDB C# ラッパー内で次のクエリ/コマンドを使用する方法はありますか?
disciplines = db.result.group({
key: {DisciplineName:1, DisciplineCode:1},
reduce: function(obj, prev) { if (!obj.hasOwnProperty("DisciplineName")) {
prev.DisciplineName = obj.DisciplineName;
prev.DisciplineCode = obj.DisciplineCode;
}},
initial: { }
});
私Result
のクラス(ドキュメント)は次のようになります。
public class Result
{
public virtual int ResultId { get; set; }
public virtual string DisciplineCode { get; set; }
public virtual string DisciplineName { get; set; }
public virtual int CompetitorId { get; set; }
//other stuff
}