让我们说我有一个注册模型,我有:如何动态设置属于模型的标签?
[Display(Name = "")]
public string SecretQuestion { get; set; }
我如何可以加载[Display(Name = "")]
动态,这样的显示名称实际上是秘密的问题。我从数据库中得到一个问题,我需要这是动态的。
让我们说我有一个注册模型,我有:如何动态设置属于模型的标签?
[Display(Name = "")]
public string SecretQuestion { get; set; }
我如何可以加载[Display(Name = "")]
动态,这样的显示名称实际上是秘密的问题。我从数据库中得到一个问题,我需要这是动态的。
加载数据到ViewBag并使用ViewBag填充标签。
我不相信你可以使用不显眼的验证属性的动态数据。 您需要将信息发送到视图并手动显示。
这可以通过很多方式完成,具体取决于您如何生成视图。
做的一个非常简单的方法是:
控制器:
myViewModel.SecretQuestion = GetSecretQuestion();
查看:
@Html.DisplayFor(model => model.SecretQuestion)
@Html.TextBoxFor(model => model.SecretQuestion)
我尝试过这样做,我想我不明白MVC的整个架构,但我不知道如何从我的控制器访问我的模型 – Pittfall
在您的控制器中,您需要导入命名空间模型是在例如。 '使用MyProject.Models;'。在你看来,它是这样在页面顶部声明的:'@model MyViewModel'并通过你的控制器传递'return View(myViewModelWithData);' – Terry
,但控制器方法的“HttpGet”版本有点像页面加载和它所做的就是返回ContextDependentView(); – Pittfall