オブジェクトの配列内の各オブジェクトのプロパティを別のオブジェクト(MyObject)のプロパティの値で更新しようとしています。私が電話しているかどうかわかりません:MongoCollectionでFind()をマルチペアタイムと呼ぶことができますか?
my_objects_collection = m_database.GetCollection(MY_OBJECTS_COLLECTION_NAME);
は、任意のパフォーマンスに影響を持っているので、私は一度だけ、それを呼び出して... Forループ内(各反復のための修正フィルターと)それに対して、新たな検索コマンドを実行してみました、以下を参照: MyObject my_object = null;
IMongoCollection<MyObject> my_objects_collection = null;
if (objects != null)
{
my_objects_collection = m_database.GetCollection<MyObject>(MY_OBJECTS_COLLECTION_NAME);
for (int i = 0; i < objects.Count; i++)
{
Expression<Func<MyObject, bool>> filter = x => (x.ID == objects[i].ID) && (x.LanguageCode == language_code);
my_object = await my_objects_collection.Find(filter).FirstOrDefaultAsync();
if (my_object != null)
{ objects[i].DisplayName = my_object.Name; }
}
}
ただし、上記のコードでは次の例外がスローされます。
値をnullにすることはできません。 パラメータ名:コレクションMongoDB.Driver.Core.Misc.Ensure.IsNotNull [T](T値は、文字列paramNameに)MongoDB.Driver.IMongoCollectionExtensions.Find [TDocument(IMongoCollection 1 collection, Expression
1フィルタで 、FindOptionsで
options)
forループの中でmy_objects_collectionの割り当てを移動し、各繰り返しごとに呼び出されるようにすると、コードは例外をスローせずに機能します。
私の質問Find(または他の操作)が実行された後、MongoCollectionリファレンス(my_objects_collection)はどうなりますか?
誰かがこれについていくつかの洞察を提供できるなら、私は本当に感謝します。私のアプリケーションが動作して以来私は上に移動することができますが、私は本当にコレクションが自分の理解のためにnullであることを示す例外をスローする理由を知りたいです。
は、事前にアンドリュー関係なく、あなたの例外の