1

我是一个非常喜欢网络表单的人,并且正在使用 mvc 4 来使用 mvc。

我是否遗漏了什么,或者是带有感谢或响应页面的规范,以创建一个单独的视图并直接转到该视图。

因此,例如,如果用户填写了联系我们的表单,点击提交,则用户需要在页面上看到感谢信息。

这将使用相同的 Web 表单完成,但我是否认为我应该创建一个新视图?

如果是这种情况,一个网站不是很快就会充满很多非常简单的视图吗?

4

1 回答 1

2

如果您指的是PRG 模式,那么答案是肯定的,首选方法是将用户重定向到单独的操作,这将反过来返回“谢谢”视图。

但是,没有什么能阻止您创建这样的操作,例如绑定到您的特定模型并根据该操作在您的视图中决定要渲染的内容。

这样一来,您就不应该有很多“谢谢”的意见。

编辑:

ASP.NET MVC 技术本身就是一组最佳实践和约定。没有什么可以阻止您以“错误”的方式使用它。

但是这里到底有什么问题呢?

  • 使用大量小视图可以减少混乱并给您一些灵活性;想象一下突然你不得不改变每个“谢谢”视图的方式来告诉用户关于已完成操作的一些事情并指向他下一个的情况
  • 在模板中使用一些与视图相关的逻辑可以在极端情况下将所有这些“谢谢”视图减少到很少或只有一个;另一方面,您最终可能会得到一个又大又丑的 Razor 模板
  • 使用局部视图可以帮助您解决第一个问题,但是您必须小心放置零件的位置 - 您想减少混乱,而不是产生更多
  • 在视图中使用助手可能有助于封装在多个视图中重复的视图的一小部分
于 2013-06-17T22:05:50.273 回答