【问题标题】:Form POST in ASP.NETASP.NET 中的表单 POST
【发布时间】:2011-04-16 09:41:00
【问题描述】:

我正在尝试将经典 ASP 页面转换为 ASP.NET 3.5。该页面上有几种不同的表格。

在 ASP.NET 中,有一个包裹整个页面的服务器表单控件,而表单控件在服务器表单控件中不起作用,并且一个页面上不能有多个服务器表单控件。

所以为了保留这个功能,我可以:

  • 删除包装页面的服务器表单控件,并将 html 表单留在页面上。
  • 为每个表单创建按钮单击事件并在代码隐藏中执行 POST。

这里首选的方法是什么?

【问题讨论】:

    标签: c# asp.net asp-classic


    【解决方案1】:

    我想知道在这里转换为 vanilla asp.net(又名 webforms)是不是一个坏主意。我个人会改用 MVC - 允许多种表单等,并且视图更接近 HTML,很像 ASP。

    我想我是说 vanilla asp.net 引入了一些你没有不得不受苦的小故障。

    【讨论】:

    • 我同意这一点。如果您有选择,请选择 MVC。它很容易学习,我想你会比尝试破解所有东西来使用 Web 表单更快地启动和运行。此外,您将受益于更清洁和可维护的设计。希望这会有所帮助。
    • 我同意这种情况,尽管我个人更喜欢 WebForms。
    【解决方案2】:

    我会选择第二个选项,任何按钮单击都会将整个页面发布回来,因此您不会节省任何带宽。只需适当地处理每个按钮。

    【讨论】:

      【解决方案3】:

      在这里查看我提供的类似问题的答案 :-)

      How to get past embedding a html form for paypal buttons asp.net

      如果你打算使用不同的按钮点击,你仍然需要使用这个覆盖来禁用每个处理程序中不相关的按钮,否则它将不起作用。您一次只能有一个表单标签 - 这样您可以根据需要切换/禁用您不使用的标签。

      更好的是,重构您的应用程序以使用单一表单。虽然 MVC 与您现在使用的模型更匹配,但除非您对它有足够的经验,否则走这条路是没有意义的; Web 表单更容易跳转。

      【讨论】:

        猜你喜欢
        • 2010-09-20
        • 1970-01-01
        • 2010-10-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-06
        • 1970-01-01
        • 2021-12-13
        相关资源
        最近更新 更多