次のクラスがあります。
public class Company
{
[BsonId]
public string dealerId = null;
public List<Dealer> dealers = new List<Dealer>();
}
public class Dealer
{
public string dId = null;
public int dIndex = -1;
public List<AutoStore> stores = new List<AutoStore>();
}
public class AutoStore
{
public string type = null;
public Dictionary<string, object> data = new Dictionary<string, object>();
}
Company
クラス オブジェクトを Mongoに保存することができますInsert()
。問題は、ドキュメントを検索し、そのList<>
項目で LINQ を使用しようとしたときです。私は常に例外を取得します。
var query = collection.AsQueryable<Company>()
.Where(cpy =>
cpy.dealers.Where(dlr =>
dlr.stores.Count == 1).Count() > 0) ;
このコードを実行すると、次のようになります。
System.NotSupportedException: 式のシリアル化情報を特定できません: Enumerable.Count
LINQ
今日Mongoを使い始めたばかりですが、サポートはもっと成熟していると思いました。C#
and で行ったように、ネストされた配列クエリを実行できるかどうか誰か教えてもらえますLINQ
か?
Where()
のいずれかを削除するとすぐにList<>
、その例外はスローされません