代码之家  ›  专栏  ›  技术社区  ›  Lewyh

Html。与表格相比,哪一个更好?为什么?[已关闭]

  •  0
  • Lewyh  · 技术社区  · 6 年前

    我是MVC新手&看看在我的网站上做一个表单。

    我知道我可以使用html。beginform,或者只是一个标准html。 似乎网络上的每个人都在使用html。beginform,但我不理解它的优点。在我看来,使用beginform只是服务器渲染html的额外工作。

    2 回复  |  直到 6 年前
        1
  •  2
  •   Community rcollyer    6 年前

    Asp。Net MVC BeginForm知道RouteConfig中定义的路由。ASP。NET路由模块负责将传入的浏览器请求映射到特定的MVC控制器操作。

    BeginForm HTML助手询问路由引擎如何达到控制器的操作。在幕后,它在RouteTable公开的Routes属性上使用名为GetVirtualPath的方法,您的web应用程序在全局中注册了所有路由。asax公司

    所以,在将来,即使您更改了该控制器和操作的路由映射,它也会在html中正确设置表单标记的操作。

    其他助手(如Html)的情况类似。ActionLink,它将生成知道已定义路由的超链接。

        2
  •  -1
  •   user2404597    6 年前

    html。beginform将把HTML内容包装在大括号内,它还可以帮助您“轻松”指定“控制器”和操作。

    Html.beginform("Action", "Controller", "Method") {
      // HTML controls here
    } // Simulates a </form> tag
    

    如果要使用普通表单标记,则必须对URL进行硬编码,然后自己关闭表单标记。

    就性能而言,没有区别。这都是个人喜好。