0

我有一个model

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

在页面中使用Html.LabelFor辅助方法Test.cshtml

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

并将此页面与 2 个 MVC 操作方法一起使用:CreateUpdate. 例子:

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

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

我想显示@Html.LabelFor(m => m.Date )页面Create:“日期”和Update页面:“更新日期”。我知道MVC3的正常方式是否不能做到这一点。我希望您的理想可以编辑Html.LabelForhepler 方法或任何将数据绑定到Html.LabelFor控制器上的操作方法的方法

4

2 回答 2

1

添加 hiddenFor 字段会将数据绑定到您的模型。

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

对于覆盖,请看这个答案

https://stackoverflow.com/a/5196392/5557777

于 2017-11-01T19:03:03.663 回答
0

你可以像这样覆盖 editorfor我如何覆盖 @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 )
于 2013-04-27T13:24:27.550 回答