何时使用html.beginform vs ajax.beginform

sag*_*y36 6 ajax jquery asp.net-mvc-4

在我检查过的所有帖子之后,令人惊讶的是,在我的脑海中仍然没有明确的解释,在什么情况下应该使用主题数据......

我知道对于html.beginform,它将执行回发,将数据发布到控制器方法,并重定向到另一个方法或将相同的视图返回给用户.

我知道对于ajax.beginform,你必须(纠正我,如果我错了)指定一个UpdateTargetID,其中来自控制器方法的结果发布数据将在类似于表单的同一页面上的div标签内的部分视图中进行.我知道在提交表单后您无法重定向到另一个操作方法.

在这两种情况下,您仍然可以让用户输入另一轮数据以通过控制器提交和处理.

所以,除非你需要重定向到另一个动作方法,为什么你不会一直使用ajax.beginform?

我唯一可以想象的是,html.BeginForm方法可能最适合一次又一次地输入数据,而ajax.beginForm方法将用于向用户显示结果,具体取决于他们输入的信息形式(几乎像一次性)交易.顺便说一下,我知道我在使用Ajax.BeginForm的大部分时间都与之相矛盾.

当有人使用这些方法,有人可以给我一个相对简单的解释吗?

A K*_*iry 1

正如您所说,ajax 调用适用于需要停留在同一页面的情况,并且它主要用于单页面应用程序。(就像当你在 stackoverflow 上提交答案时,这只是页面的部分刷新)

但通常您想要转到另一个视图(页面)。(就像您在某个网站上以新用户身份注册一样,提交后您将被重定向到主页)