ASP.NET到Web开发中的PHP转换

时间:2009-05-23 02:11:21

标签: php asp.net

如何通过html表单在asp.net Web应用程序中来回传递信息?我知道如何在PHP中执行此操作,但我似乎无法通过代码隐藏的事情来思考它(我认为这就是它所谓的)。 (注意:我几小时前才开始关注asp.net。我决定通过重新创建一个简单的页面来尝试它)

3 个答案:

答案 0 :(得分:2)

您可以使用标准HTML表单发布到ASP.NET页面,如下所示:

<form action="/MyPage.aspx" method="post"> 
    <input type="text" name="name" />
</form>

然后在MyPage.aspx的代码中,您可以访问这样的表单元素:

protected void Page_Load(object sender, System.EventArgs e)
{
    string name = Request.Form["name"];
}

还应该注意的是,大多数ASP.NET书籍可能会教导回到同一页面。然后,您可以通过对象访问页面上的表单项,然后执行Response.Redirect()到您想要访问的下一页。

在这种情况下,aspx将如下所示:

<asp:TextBox runat="server" id="Name" />

你可以像这样访问代码隐藏中的值:

protected void Page_Load(object sender, System.EventArgs e)
{
    if(Page.IsPostBack)
    {
        string name = Name.Text;
    }
}

答案 1 :(得分:0)

要考虑的最重要的事情之一就是您无法真正控制经典ASP.NET WebForms中的表单回发。当我从PHP迁移到ASP.NET时,这对我来说是一个很大的范例转换。但是,您确实有一个方便的对象可以让您更轻松。在ASP.NET WebForms中,您可以访问Session对象。您可以在会话中存储几乎任何内容,并且它将在表单之间可见。您唯一需要注意的是sessions expire

答案 2 :(得分:0)

国少

PHP非常适合无状态的Internet模型。可以从头开始编写简单的表单,让它们立即执行您期望的操作。然而,ASP.NET使无状态模型弯曲,使其类似于为桌面设计软件。

因此我假设您正在尝试在PHP中输入ASP.NET命令,就像您在PHP中习惯的那样,但这可能会导致挫败感。

向导

要初步了解表单的结构和构建方式,也许您应该使用Visual Studio中提供的向导和教程构建一个简单的应用程序,然后深入了解它生成的代码。