В моем mvc3 приложении я хочу, чтобы заполнить DropDownList для данных, которые наступающие из базы данных здесь я использую entityframework с базой данных первым подходом так, пожалуйста, помогите мне сделать этоСоздания выпадающего списка с базой данных первого
ответ
Вы не сделали предоставить любой код того, что вы сделали до сих пор, поэтому я ничего не знаю о данных, с которыми вы работали. Я отправлю код, и все, что вам нужно сделать, это изменить его, чтобы он соответствовал вашему сценарию.
Позволяет работать с простым решением кредитных заявок. Клиент должен подать заявку на получение кредита, и ему необходимо предоставить банковские реквизиты. Он должен будет выбрать банк из выпадающего списка.
Давайте начнем с модели домена под названием Bank
. Это означает, что ваши данные поступают из вашей таблицы базы данных. Позволяет вызвать таблицу Banks
.
public class Bank
{
public int Id { get; set; }
public string Name { get; set; }
}
Ваш стол называется Banks
будет выглядеть следующим образом:
Id | int | not null | primary key
Name | varchar(50) | not null
Depeneding на вас то, что вам нужно сделать, я обычно есть сервисный слой, который вызывает мое хранилище банка, чтобы вернуть данные. Но, видя, что вам нужно только вернуть данные, и ничто другое, мы не можем пропустить уровень сервиса.
public class BankRepository : RepositoryBase<Bank>, IBankRepository
{
public IEnumerable<Bank> FindAll()
{
return DatabaseContext.Banks;
}
}
контекст базы данных Вы будет выглядеть следующим образом:
public class DatabaseContext : DbContext
{
public DbSet<Bank> Banks { get; set; }
}
Это, как ваши методы извлечения данных может выглядеть следующим образом. Возможно, это не полное решение, но есть много примеров онлайн. Просто пойдите и Google.
Переход на веб-приложение.
Ваш просмотр/страница будет работать с моделью просмотра, а не с моделью вашего домена. Модели представления используются для представления ваших данных на странице просмотра/страницы. Таким образом, на вашем представлении создания вы перейдете в модель представления приложения для приложения со списком своих банков. Экземпляр IBankRepository
будет поставляться с помощью технологии, называемой инъекцией зависимостей. Для этого я использую Autofac
.
public class ApplicationViewModel
{
public int BankId { get; set; }
public IEnumerable<Bank> Banks { get; set; }
}
Метод действия вашего контроллера заполняет модель обзора и отправляет ее на ваш просмотр.
public class ApplicationController : Controller
{
private readonly IBankRepository bankRepository;
public ApplicationController(IBankRepository bankRepository)
{
this.bankRepository = bankRepository;
}
public ActionResult Create()
{
ApplicationViewModel viewModel = new ApplicationViewModel
{
Banks = bankRepository.FindAll()
};
return View(viewModel);
}
}
Ваше представление затем получит эту модель просмотра и сделает с ней то, что ей нужно. В этом случае он закроет ваш банк.
@model YourProject.ViewModels.Applications.ApplicationViewModel
@using (Html.BeginForm())
{
<tr>
<td class="edit-label">Bank: <span class="required">**</span></td>
<td>
@Html.DropDownListFor(
x => x.BankId,
new SelectList(Model.Banks, "Id", "Name", Model.BankId),
"-- Select --"
)
@Html.ValidationMessageFor(x => x.BankId)
</td>
</tr>
}
Я не знаю, что ваш опыт, но судя по вашему вопросу, кажется, что вам все еще нужно много исследований. Есть примеры примеров в Интернете. Вам нужно будет проработать образцы Entity Framework code first
и ASP.NET MVC
. Потратьте некоторое время, и вы пожертвуете наградами позже.
Надеюсь, это сработает и удачи. Решение может быть не таким, каким вы хотите, но оно может помочь вам в правильном направлении.
Теперь это всеобъемлющий ответ, Привет! –
Пусть Предположим, у вас есть класс, как так
public class ProductBrand
{
//Eg. Nokia, Hp, Dell
/// <summary>
/// Second Level to Category
/// Has Foreign Key to category table
/// </summary>
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ProductBrandId { get; set; }
[Display(Name = "Category")]
public int ProductCategoryId { get; set; }
public virtual ProductCategory ProductCategory { get; set; }
[Required(ErrorMessage = "This field is required")]
[StringLength(300, ErrorMessage = "This field must not be greater than 300 xters long")]
[Display(Name="Name")]
public string BrandName { get; set; }
public IList<Product> Products { get; set; }
[Display(Name = "Status")]
public bool ActiveStatus { get; set; }
}
Что означает эта модель имеет внешний ключ имя ProductCategoryId затем в вашем создания продукта зрения бренда вы будете нуждаться в DropDownList, содержащий все productcategory на выбор.
Просто создайте ActionResult как так
public ActionResult CreateProductBrand() {
ViewBag.ProductCategoryId = new SelectList(context.ProductCategories, "ProductCategoryId", "CategoryName");
return View();
}
Затем вызовите viewbag в вас corrensponding вид следующим образом:
@using (Html.BeginForm()) {
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<table style="width:400px" class="post-form">
<tr>
<td>Category</td>
<td>
<div class="editor-field">
@Html.DropDownList("ProductCategoryId", String.Empty)
@Html.ValidationMessageFor(model => model.ProductCategoryId)
</div>
</td>
</tr>
</table>
<table style="width:400px" class="post-form">
<tr>
<td>Brand</td>
<td>
<div class="editor-field">
@Html.EditorFor(model => model.BrandName)
@Html.ValidationMessageFor(model => model.BrandName)
</div>
</td>
</tr>
<tr>
<td>Status</td>
<td>
<div class="editor-field">
@Html.EditorFor(model => model.ActiveStatus)
@Html.ValidationMessageFor(model => model.ActiveStatus)
</div>
</td>
</tr>
<tr>
<td></td>
<td>
<input type="submit" class="button blue" value="Save" />
<a href="@Url.Action("ProductBrand", "ProductSetup")" class="button">Cancel
</a>
</td>
</tr>
</table>
}
ViewModel:
public List<Item> _Items { get; set; }
public int_newID { get; set; }
Модель Item
public int_id { get; set; }
public string _name { get; set; }
Контроллер: Populate _Items с данными и отправить этот список на ваш взгляд
Вид:
@Html.DropDownListFor(c => c._newID, new SelectList(Model._Items , "_id", "_name"),--Select Item--")
- 1. Заполнение выпадающего списка из проблем с базой данных
- 2. Добавление выпадающего списка в таблицу, связанную с базой данных SQL
- 3. Устанавливает значение выпадающего списка из другого варианта с базой данных
- 4. Popluating списка с базой данных
- 5. Получение значения из первого выпадающего списка jsp
- 6. Отключение первого элемента для выпадающего списка
- 7. получение первого значения индекса из выпадающего списка
- 8. Заполнение второго выпадающего меню зависит от первого выпадающего списка
- 9. заполнение выпадающего списка на основе выбранного значения первого списка
- 10. Как использовать показ второго выпадающего списка первого выпадающего списка с помощью meteor.js?
- 11. генерирование второго выпадающего списка в зависимости от значения первого списка
- 12. Простейший способ создания выпадающего списка в MVC
- 13. Force combobox для создания выпадающего списка
- 14. jQuery для создания динамического выпадающего списка
- 15. Применить фильтрацию для создания выпадающего списка
- 16. Поиск пользовательского списка с базой данных
- 17. Выбор данных из выпадающего списка
- 18. 2-й раскрывающийся список на основе значения первого выпадающего списка
- 19. Как отфильтровать параметры выпадающего списка с помощью другого выпадающего списка
- 20. Сортировка выпадающего списка с помощью jQuery?
- 21. Перемещение данных списка выпадающего списка SAPUI5
- 22. Сортировка выпадающего списка
- 23. привязка выпадающего списка к базе данных
- 24. OOP PHP Соединение с базой данных первого класса Mysql
- 25. Использование соединения с базой данных в web.config для заполнения выпадающего списка
- 26. получение выбранного объекта из выпадающего списка, связанного с базой данных - MVC3
- 27. Создание каскадного выпадающего списка
- 28. передачи данных в YII зависимого выпадающего списка
- 29. vb.net с базой данных
- 30. Как обновить значения списка выпадающего списка с другой таблицей данных
Это не достаточно информации для предоставления вам помочь. Попытайтесь прочитать документацию msdn о DropDownFor: http://msdn.microsoft.com/en-us/library/system.web.mvc.html.selectextensions.dropdownlistfor(v=vs.108).aspx –
Вам необходимо предоставить некоторые образец кода. Мы хотим видеть, что вы сделали сами по себе, чтобы мы могли помочь исправить и сообщить о вашем коде. Не ожидайте полного решения здесь из ничего. –
Вы делаете таблицу в базе данных, затем вызываете эту таблицу в entityframework, а затем создаете контроллер.? Это так, как вы это делаете? Пожалуйста, уточните больше, чтобы мы могли вам помочь. – bot