C# と mongo を使用して、クエリのさまざまな方法をいくつか確認しています。現在、私は旅行のコレクションを持っており、各旅行には一連の費用があります。各費用には独自の objectId があります。
最初に、更新する特定のクエリを見つけるために、このクエリがありました。コツは、経費の ID にドットを挿入する 2 番目の部分でした。
var Update = Query.And(
Query<Trip>.EQ(t => t.Id, ObjectId.Parse(tripId)),
Query<Expense>.EQ( "Expenses._id", ObjectId.Parse(id)));
ここでタイプミスをして Expenses._Id という名前を付けたので、大文字の II は「ゆるい文字列」から離れる方法を探していました。
私はこれを試しました
var tripToUpdate = Query.And(
Query<Trip>.EQ(t => t.Id, ObjectId.Parse(tripId)),
Query<Expense>.EQ(e => e.Id, ObjectId.Parse(id)));
しかし、それはに翻訳されました
{ "$and" : [{ "_id" : ObjectId("5224f0208c74943810d333f6") },
{ "_id" : ObjectId("5224f0488c74943810d333f7") }] }
そして、期待されたものではありませんExpense._id
。これをサポートするには、何らかの規則が必要になると思います。
男性がクエリするだけでなく、より強く型付けされた方法でそれを書くことはまったく可能ですか?
クエリのために、私はすでに std C# プロバイダーを使用しています。