Как привязать данные к свойству "Display" модели с помощью MVC3?

У меня есть model:

public class TestModel {
  [Display(Name = "Date")]
  public DateTime Date { get; set; }
}

с Html.LabelFor вспомогательный метод в Test.cshtml страница

@Html.LabelFor(m => m.Date )

и используйте эту страницу с двумя методами действий MVC: Create а также Update, Пример:

public virtual ViewResult Create() {
 return View("Test");
}

public virtual ViewResult Update() {
 return View("Test");
}

и я хочу отобразить @Html.LabelFor(m => m.Date ) с Create страница: "Дата" и Update страница: "Дата обновления". Я знаю, если нормальный способ MVC3 не может сделать это. Я надеюсь, что ваш идеал может редактировать Html.LabelFor метод Геплера или любой другой способ привязать данные к Html.LabelFor в методах действия на контроллере

2 ответа

Решение

Вы можете переопределить редактор вот так. Как я могу переопределить шаблон @Html.LabelFor? но я думаю, что вы можете сделать это проще с ViewBag:

public virtual ViewResult Create() {
 ViewBag.Title = "Create";
 return View("Test");
}

public virtual ViewResult Update() {
 ViewBag.Title = "Update";
 return View("Test");
} 

ввиду:

@string.format("{0} Date" , ViewBag.Title )

Добавление поля hiddenFor свяжет данные с вашей моделью.

@ Html.HiddenFor (м =>m.Date);

Для переопределения, пожалуйста, просто посмотрите этот ответ

/questions/41349108/kak-ya-mogu-pereopredelit-shablon-htmllabelfor/41349122#41349122

Другие вопросы по тегам