バックグラウンド:
私が達成する必要があるのは、レコードの特定の配列がnullまたは空の場合に、コレクション内のすべてのレコードを削除することです。
null配列を見つけるためのC#ドライバークエリは次のとおりです。
IMongoQuery query = Query.Exists("myArray", false);
これはnull配列を検出するのに問題ありませんが、配列がnullにならない場合もありますが、要素はありません。私が必要としているのはもっと似ています:
// Note: second subquery will not work
IMongoQuery query = Query.Or(
Query.Exists("myArray", false),
Query.IsEmpty("myArray", false) // error
);
モデル:
私のクラスは次のようになります。
public class MyClass
{
// This property may be null or empty
[BsonElement("myArray")]
public string[] MyArray { get; set; }
[BsonElement("someElement")]
public int SomeElement{ get; set; }
}
概要:
- 配列が空の場合にクエリを実行するには、どのC#ドライバーメソッドを使用する必要がありますか?
- または、配列がnullまたは空かどうかを確認するための最良の方法は何ですか?
これに関する助けをいただければ幸いです。:)