Я новичок в ASP.NET MVC и пытаюсь связать выпадающий список с данными из базы данных. Я делаю компьютерное приложение для калькуляции пакетов, в основном пользователи могут выбрать компоненты, которые он / она хочет, в свой компьютерный пакет из выпадающего списка, а затем отправить заказ по электронной почте. Компоненты должны поступать из базы данных.
Я не знаком с моделью MVC, поэтому не совсем понял, в какую папку я должен поместить какую часть приложения. Прямо сейчас у меня есть
-Controllers:
- HomeController
-модели
- HomeRepository
- IHomeRepository
- Database.dbml (сейчас я использую только таблицу с именем product, и информация, которая мне нужна,
product_description и product_price)
Вид
- Главная
---- Индекс
---- ... и т.д ...
Мне удалось собрать все товары из таблицы товаров в маркированный список и показать их на странице индекса. Итак, мой HomeRepository создает текстовый текст данных из Database.dbml. Существует также общедоступный метод IList ListAll () (?), Где написано поисковое предложение. IHomeRepository имеет только
public interface IHomeRepository
{
IList<product> ListAll();
}
Каким-то образом это работает, и какое-то время я был очень счастлив. Я попытался заполнить выпадающий список на странице индекса следующим образом:
<% foreach (product m in (IENumerable)ViewData.Model
{
Html.DropDownList("processor"m new[] {
new SelectedListItem { Text = m.product_description, Value m.product_description }, "Select a processor")
}
}
Но в нем отображается только столько выпадающего списка, сколько я получил продуктов из предложения поиска, и в каждом списке отображается только один результат.
Что мне делать? Или как мне создать такое приложение? Возможно, Web Forms должно быть проще в создании этого простого приложения, но мне нужно попытаться использовать методы eXtreme Programming, включая разработку через тестирование, и я понял, что это невозможно с Web Forms. Ну, этот XP - другая история ...
Большое спасибо.