В моей таблице продуктов есть столбец с ключевыми словами, в столбце ключевых слов будут, например, красные, зеленые, белые, фиолетовые, черные. У каждого продукта есть ключевое слово. Я хочу, чтобы в раскрывающемся списке ключевых слов был выбран раскрывающийся список ключевых слов, чтобы при выборе черного ключевого слова отображались все продукты с черным ключевым словом, можно ли добиться чего-то подобного, если да, любая помощь или помощь будут высоко оценены ??
Также я хочу заполнить выпадающий список столбцом ключевых слов, например, если добавлен новый продукт с другими ключевыми словами, выпадающий список должен включать это ключевое слово.
В настоящее время я использую производство для поиска, ниже приведен код:
Вид:
@if (Model.AvailableManufacturers.Count > 0)
{
<tr>
<td class="title">
@Html.LabelFor(model => model.Mid):
</td>
<td class="data">
@Html.DropDownListFor(model => model.Mid, Model.AvailableManufacturers)
</td>
</tr>
}
Контроллер:
var manufacturers = _manufacturerService.GetAllManufacturers();
if (manufacturers.Count > 0)
{
model.AvailableManufacturers.Add(new SelectListItem()
{
Value = "0",
Text = _localizationService.GetResource("Common.All")
});
foreach (var m in manufacturers)
model.AvailableManufacturers.Add(new SelectListItem()
{
Value = m.Id.ToString(),
Text = m.Name,
Selected = model.Mid == m.Id
});
}
ManufactureService.cs:
public virtual IList<Manufacturer> GetAllManufacturers(bool showHidden = false)
{
var query = from m in _manufacturerRepository.Table
orderby m.DisplayOrder
where (showHidden || m.Published) &&
!m.Deleted
select m;
var manufacturers = query.ToList();
return manufacturers;
}
Вопрос: Какой запрос Linq следует использовать, чтобы вызвать отдельные ключевые слова из табличного продукта и указать их в раскрывающемся списке.
Вопрос 2: Запрос Sql для поиска товаров по выбранному ключевому слову.
Я использую бритву mvc3 и LINQ