我和一些同事正在使用 .net mvc4 开发 CRUD 应用程序。根据客户的选择,有很多动态内容通过 jQuery 呈现。这个解决方案的问题是我们必须进行大量隐藏输入来传递额外的数据,以防 ModelState.IsValid 变为假,并使用模型和一些 ViewBags 重新渲染 View
问题 1:动态呈现事物并依赖隐藏的输入而不是利用(或者它是一种优势) session 是否是一种不好的做法?
问题 2:如果我们不使用表单提交方法而是通过 jQuery 使用 ajax 请求并通过 JSON 响应呈现错误(我认为这对于整个应用程序)?
问题 3:与问题 2 相关 - 传输 JSON(键值 == ModelProperty - ErrorText)不是比重新呈现整个 View 并通过“线路”发送它更快吗?
最佳答案
关于您的问题 2 和 3:表单和 ajax 并不相互排斥:如果您担心在提交表单时只呈现页面的一部分,您应该使用部分 View 和
@using (Ajax.BeginForm(...
代替
@using (Html.BeginForm(...
这就是 mvc 的做法。
关于javascript - asp.net mvc ModelState IsValid - 有效处理 false 的返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25783112/