У меня есть таблица рецептов, которая имеет таблицу связанных ингредиентов на основе одного на много.Выбор на большой таблице с использованием Linq
Как выбрать с помощью ингредиентов Linq , которые имеют колонку с ингредиентомName и должны содержать указанное слово.
Это то, что я пробовал.
IQueryable<OurRecipes.Domain.Linq2Sql.Recipe> recipes = _dbctx.Recipes.AsQueryable();
foreach (string word in searchdata.Keywords)
{
recipes = recipes.Where(r => r.RecipeTitle.Contains(word));
recipes = recipes.Where(r => r.Ingredients.Where(i => i.IngredientName.Contains(word)));
}
Я получаю не могу преобразовать тип 'etc' в ошибку bool.
Любые идеи Malcolm
+1, и исправление должно изменить эту строку на что-то вроде 'recipes = recipes.Where (r => r.Ingredients.Count (i => i.IngredientName.Contains (word))> 0);' –
Ваше решение не будет компилироваться, потому что 'i'' 'Recipie'. У него нет 'IngredientName'. –
Отвечено обновлено ... – Graviton