Получение выпадающего списка для работы с codefirst 4.1 MVC3 - PullRequest
0 голосов
/ 28 мая 2011

Я пытаюсь осмыслить структуру сущностей 4.1. Подход codefirst для MVC3.

Я пытаюсь добавить выпадающий список в представление создания без особой удачи.

У меня есть модельвыглядит как

public class BusinessModel
{
    public int Id { get; set; }

    [Required]
    public string BusinessName { get; set; }
    [Required]
    public string PhoneNumber { get; set; }


    public int BusinessTypeId { get; set; }
    public virtual BusinessTypeModel BuinessTypeModel { get; set; }

}

public class BusinessTypeModel
{
    public int Id { get; set; }
    public string BusinessType { get; set; }
}

Мой выпадающий список выглядит как

     @Html.DropDownListFor(model => model.BusinessTypeId,
         ((IEnumerable<CRM.Models.BusinessTypeModel>)ViewBag.BuinessTypes)
    .Select(option => new SelectListItem
    {

        Text = (option == null ? "None" : option.BusinessType),

        Value = option.Id.ToString(),

        Selected = (Model != null) && (option.Id == Model.BusinessTypeId)

    }), "Select Business Type...")

Я еще ничего не сделал с моим контроллером, так что его ваниль

 public ActionResult Create()
    {
        return View();
    } 

Однако я получаю нольошибка

Значение не может быть нулевым.Имя параметра: source

Теперь я предполагаю, что это пустое значение, потому что я не связываю выпадающий список правильно, однако я не уверен, где я иду не так.

Может кто-нибудь, пожалуйста, помогите счто я делаю не так?

1 Ответ

1 голос
/ 28 мая 2011

вы используете "ViewBag.BuinessTypes" в вашем представлении,

Может быть, вы должны назначить valeu ViewBag.BuinessTypes в Create Controller?

как:

 public ActionResult Create()
    {
        ViewBag.BuinessTypes = ...;        
        return View();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...