我有一个只需要密码字段的页面。用户必须输入密码然后提交。是否可以在没有模型的情况下为其创建视图?我问,因为如果我需要创建一个模型,那么它将只有一个密码属性。我希望这个简单的页面有一个简单的方法。
答案 0 :(得分:1)
如果您不想创建View Model,那就完全没问了。您可以放弃一些好处,如自动客户端验证(数据注释)。这意味着您必须在客户端以及稍后在服务器端进行所有自我验证。
这是一种简单的方法。
您的控制器代码看起来像这样。
public ActionResult AcceptPasswordOnly(string Password)
{
// Do your validation if want password back to field if validation failed then set in ViewData["Password"] = Password
return View();
}
您的视图代码看起来像这样。
@using (Html.BeginForm("AcceptPasswordOnly", "Home"))
{
<div>Enter Passowrd :</div> @Html.TextBox("Password" , ViewData["Password"] ?? "")
<input type="submit" />
}
注意:请记住@Html.TextBox的第一个参数是name和controller方法参数必须相同才能直接访问。
这样,您可以直接执行而无需创建模型,只使用原始数据类型。