我有一個數據庫,它的架構如下:過濾兒童實體框架查詢
正如你可以看到,我們有WareCategories這將是商品我要去的類別在我的網站上工作。 WareTypes這將是每個項目類型的定義。類別定義表中的屬性WarePropertyDefinitions和WareProperties定義了在WarePropertyDefinitions表中定義的每個屬性的值。
現在我有用戶在OldWares和用戶搜索項的搜索頁面,選擇類別和我顯示用戶在WarePropertyDefinitions,如果他喜歡更好的結果用戶填寫的數據定義的所有屬性。但我的問題是,我不能過濾WareTypes基於WareProperties,因爲它是從ICollection我無法訪問過濾器選項。
我該如何應用這種基於屬性的過濾?
在此先感謝...
編輯:
這是我獻給描述更多的代碼的一部分:
var lst = WareCategory.GetItem(Convert.ToInt32(ddlChildren.SelectedValue)).WarePropertyDefinitions.ToList();
foreach (var ListItem in lst)
{
var value = BaseHelper.FindFormValue("PropertyValue" + ListItem.Id.ToString());
if (!string.IsNullOrEmpty(value))
{
query = query.Where(m => m.WareType.WareProperties.);
}
}
}
的代碼這部分是我的搜索功能,你可以看到我要生成WarePropertyDefinition中的項目列表,該用戶通過名爲ddlChildren的下拉菜單選擇。我將在此定義中進行迭代,併爲每個屬性輸入用戶值(值變量將保存用戶輸入的值,並且我將檢查用戶是否在文本框中輸入了任何內容),我會將其包含在(通過這我將它添加到where子句中,最終過濾我的選擇)。但正如你所看到的代碼是不完整的,因爲我不知道如何完成它。
向您的問題添加一些代碼會讓我們更加了解這個問題。 –
我編輯了我的代碼,如果您需要更多我的代碼,我會很樂意提供更多,但我認爲這部分代碼就足夠了。在此先感謝 –
所以你想找到WareTypes的地方有價值的WareTypes? –