2013-04-29 3 views
-1

Я использую MVC в первый раз. Я понял логику, но я сталкиваюсь с проблемами при реализации моего кода. Я хочу показать выпадающий список со следующими значениями.
В контроллере:, используя раскрывающийся список в mvc4

List<SelectListItem> ListItems = new List<SelectListItem>(); 
       ListItems.Add(new SelectListItem() 
       { 
        Value = "1", 
        Text = "---Select---", 
       }); 

       ListItems.Add(new SelectListItem() 
       { 
        Value = "2", 
        Text = " What is your nationality?", 
       }); 

       ListItems.Add(new SelectListItem() 
       { 
        Value = "3", 
        Text = " What is your birth place?", 
       }); 

       model.Sec_Que = new SelectList(ListItems, "Value", "Text"); 
       return View(model); 

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

[Display(Name = "Security Question")] 
    public SelectList Sec_Que { get; set; } 

В связи я писал:

@Html.DropDownListFor(m => m.Sec_Que, Model.Sec_Que) 

Я получаю сообщение об ошибке "Ссылка на объект не указывает на экземпляр объекта. Как это исправить? Пожалуйста помоги!

+1

Вы уверены, что 'model' не является нулевым? –

+0

@vonv. Я передаю параметр моему контроллеру, например, – user2219632

+0

'public ActionResult Register (модель RegisterModel)' поэтому я думаю, что модель не является нулевой – user2219632

ответ

1

Вот как нужно раскрывающийся быть инициализированы

[Display(Name = "Security Question")] 
public IEnumerable<SelectListItem> Sec_Que { get; set; } 

Кроме того, добавить поле подкладочный представлять выбранное значение в классе вид модели

public string selectedText{ get; set; } 

наконец это сделать

@Html.DropDownListFor(m => m.selectedText, Model.Sec_Que) 
+0

Но это не решит проблему. Ссылка на объект не установлена ​​в экземпляр объекта. Не так ли? –

+0

Ошибка все еще существует. «Ссылка на объект не установлена ​​в экземпляр объекта» – user2219632

+0

как вы создаете экземпляр объекта модели. У вас это делается в контроллере? Я не вижу, что part.i видит model.sec_que, но где создается объект модели? –

Смежные вопросы