Mvc 4 Модель равна нулюC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Mvc 4 Модель равна нулю

Сообщение Anonymous »

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

Person.cshtml

Код: Выделить всё

@model SampleApp.Web.ViewModel.PersonViewModel

@{
ViewBag.Title = "Welcome";
}



Welcome to example page.

//Post data works as expected, controllers create method write to db successfully
@using (Html.BeginForm("Create", "Person", FormMethod.Post, new { enctype =   "multipart/form-data" }))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)


Personen


@* @Html.LabelFor(model => model.Name)

@Html.EditorFor(model => model.Age)
@Html.ValidationMessageFor(model => model.Age)

@Html.LabelFor(model => model.Surrname)







}

//binding to Model fails, Model is null. Not be able to debug anything in    controller action, it stops when "loading" the page
@using (Html.BeginForm("GetListBoxData", "Person"))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
@Html.ListBoxFor(model => model.ListboxData, Model.ListboxData);
}


PersonController.cs

Код: Выделить всё

[AcceptVerbs(HttpVerbs.Get)]
[ValidateAntiForgeryToken]
public ActionResult GetListBoxData()
{
var data = new List
();
data.Add(new PersonViewModel{Name = "Test", Surrname="testsurrname", Age=30});

var viewModel = new PersonViewModel()
{
ListboxData = data.AsEnumerable().Select(s=> new SelectListItem{Value=s.Name ,Text = s.Surrname}),
};

return View(viewModel);
}

[AcceptVerbs(HttpVerbs.Post)]
[ValidateAntiForgeryToken]
public ActionResult GetListBoxData(PersonViewModel persondata)
{
//TODO: handle values from View
return View(this);
}

[ValidateAntiForgeryToken]
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create([Bind(Include = "Name, Surrname, Age")]  PersonViewModel persondata)
{
try
{
PersonService personDataProvider = new PersonService();
personDataProvider.SavePerson(persondata);

return new RedirectResult("SomewhereToGo");
}
catch (DataException ex)
{
//TODO: Log
}

return View(this);
}
PersonViewModel

Код: Выделить всё

public class PersonViewModel
{
public int PersonId{ get; set; }
public int Age { get; set; }
public string Name { get; set; }
public string Surrname { get; set; }
public IEnumerable ListboxData { get; set; }
}
запись значений из editFor в базу данных работает должным образом без кода для listboxfor.
после добавления его в мой html он должен быть заполнен из базы данных при загрузке страницы, но я получаю исключение ReferenceNotSet при загрузке страницы. Model.ListboxData имеет значение null до вызова действия GetListBoxData.

Большое спасибо за помощь!

Подробнее здесь: https://stackoverflow.com/questions/184 ... el-is-null
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • В списке событийBox1_SelectedIndexChanged почему переменная внутри равна нулю?
    Гость » » в форуме C#
    0 Ответы
    48 Просмотры
    Последнее сообщение Гость
  • Статическая переменная равна нулю – Objective-C
    Гость » » в форуме IOS
    0 Ответы
    45 Просмотры
    Последнее сообщение Гость
  • Причина исключения Spark для удаленного кластера равна нулю.
    Anonymous » » в форуме JAVA
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Как я могу гарантировать, что переменная в Pyomo либо останется между границами, либо будет равна нулю?
    Anonymous » » в форуме Python
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Есть ли способ сообщить компилятору .NET, что переменная не равна нулю?
    Anonymous » » в форуме C#
    0 Ответы
    42 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»