をフィルタリングするには、私のクエリです:エラー()ここで
var x = db
.Users
.Where(u => u.Locations.Any(l => searchedLocation.Counties.Any(c => c.LocationId == l.LocationId));
コンテキスト:
Users
がIQueryable<User>
です。 (EFオブジェクトセット)searchedLocation
は、Location
オブジェクトです。Counties
は、ICollection<MiniLocation>
です。私は何をしようとしている
:
戻り、それらの場所のための郡のいずれかが、検索場所に属する郡のいずれかのlocationIdを持つすべてのユーザー、。
例:ボブ:ニューヨーク(LocationId = 1 County1LocationId = 2)
ユーザーのための
検索。場所:ソーホー。郡1ロケーションID = 2.郡2ロケーションID = 3.
これは一致します。
エラー私が受け取る(ソーホーので2のLocationIdで郡を持っている、とそうNYCを行います):
型「xxx.xxx.Locations.MiniLocation」が一定の値を作成することができません。 。このコンテキストでは、プリミティブ型( 'Int32、String、およびGuid'など)のみがサポートされています。
は()あなたが.Joinにしようとしましたか? –