在ASP.NET MVC应用程序中查看状态

She*_*tty 3 asp.net asp.net-mvc

我已经读过,在asp.net MVC应用程序中没有viewstate.我正在进行模型验证.现在,如果我的页面上有两个文本框,我正在为模型中的两个文本框进行必要的文件验证.单击一个按钮即可在服务器端完成此验证.我将填写一个文本框并单击"提交"按钮.它执行验证并返回结果,说明需要第二个字段.此时保留第一个文本框的值.那么你能告诉我这个文本框即使在回发后如何保留这个值?

Cra*_*ntz 9

没有"回发".只有一个帖子.

  1. 服务器返回HTML.
  2. 浏览器呈现它.
  3. 用户POST垃圾数据.
  4. 所有用户提交的数据都保存在Controller.ModelState集合中.
  5. 如果存在验证错误,则每个ModelState条目都会Errors设置其属性.
  6. 服务器查看废话数据.返回与(1)相同的页面,除了它包括用户提交的数据,好或坏,以及废话数据的验证错误.
  7. 浏览器渲染.

比如说,当你打电话时,除非有一个键,否则Html.TextBox("someName", someValue)文本框将包含,在这种情况下,使用值来代替.这是最初显示默认数据(如果有)的方式,但在发生错误后显示用户的数据.someValue ModelState"someName"ModelState