MVC5 Razor 在Controller中修改Model的值为什么在View没有变化?
2个同名的Action, 一个是GET,另一个POST方式。模型实例提交到POST的Action中处理,将模型一些值修改,但在View中看不到变化,仍然是原来的值。
上代码,
Model
Controller
View
按我的设想,提交后,在页面上文本框中应该自动显示"用户2",但仍然显示“用户1”
上代码,
Model
public class TestModel
{
[Display(Name = "用户名")]
[Required(ErrorMessage = "必填")]
public string Name { get; set; }
[Display(Name = "密码")]
[Required(ErrorMessage = "必填")]
public string Password { get; set; }
}Controller
public ActionResult Test()
{
TestModel testModel = new TestModel()
{
Name = "用户1",
Password = "password1"
};
return View(testModel);
}
[HttpPost]
public ActionResult Test(TestModel testModel)
{
bool isOk = true;//这里假设密码是对
if (isOk)
{
testModel.Name = "用户2";//此行没起作用
testModel.Password = "password2";//此行没起作用
}
else
{
ModelState.AddModelError("","密码错误");
}
return View(testModel);
}View
@{
Layout = null;
}
@model Web.Models.Member.TestModel
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title></title>
</head>
<body>
<div>
@using (Html.BeginForm())
{
@Html.ValidationSummary(true)
<div>
@Html.LabelFor(model => model.Name)
@Html.TextBoxFor(model => model.Name)
</div>
<div>
@Html.LabelFor(model => model.Password)
@Html.TextBoxFor(model => model.Password)
</div>
<div><input type="submit" value="提交" /></div>
}
</div>
</body>
</html>
按我的设想,提交后,在页面上文本框中应该自动显示"用户2",但仍然显示“用户1”
...全文
相关推荐
ASP.NET中添加View与Razor引擎以及View解析和Controller向View传值示例代码.zip
该项目演示了ASP.NET MVC中如何使用Razor引擎创建视图,实现控制器向视图传递数据,并完成基本的页面渲染与路由配置。包含身份验证、全局异常处理、资源捆绑及CSS样式控制等功能,展示了典型的M
从MVC到Razor Pages
在ASP.NET Core框架中,开发Web应用程序的方式经历了从传统的MVC(Model-View-Controller)模式到Razor Pages的演变。
MVC-Razor-View-de-Kodlama
MVC-Razor-View-de-Coding。 有时并不是所有的东西都可以在 Controller 中准备好。 在这种情况下,可能需要在视图本身内进行编码。 在本文中,我将向您展示如何在 View
ASP.NET MVC4 Razor模板简易分页效果
总结起来,ASP.NET MVC4中的Razor模板通过结合Controller和视图,可以轻松实现分页功能。
MVC controller调用js源码
首先,让我们理解MVC(Model-View-Controller)模式。MVC是一种设计模式,它将应用程序的业务逻辑、用户界面和数据模型分离。


