2009-04-08 43 views
3

看起來這個話題上的所有內容似乎都是自發布以來發生了變化,或者與彼此有着天壤之別。在ASP.NET MVC中使用HTML表單?

我只是想在我看來創建一個簡單的表單。

我應該使用Html.BeginForm()/ TextBox()/ EndForm()方法還是應該使用純粹的HTML表單?哪一個是首選?

這是我到目前爲止有:

<%=Html.BeginForm("Create", "Product", FormMethod.Post); %> 
    <%=Html.TextBox("productTextBox", "Enter a shoe name"); %> 
    <input type="submit" name="createButton" value="Create Me!" />  
<%=Html.EndForm(); %> 

什麼是「正確」的方式來創建一個簡單的形式,在ASP.NET MVC的按鈕和文本框,並讓我在提交數據形式到/產品/創建行動?

我該如何從該方法中訪問表單數據?有些人似乎使用「FormCollection」,而其他人只是使用Request.Form方法。我應該使用哪種方式?

有人能夠啓發我嗎?

回答

1

看一看Link。 這是德國文本,但代碼應該可以理解。

5

表單助手是推薦的方式,因爲它允許您提供控制器,操作和其他路由數據,並且根據您的路由自動生成URL(在Global.asax中)。優點是,如果您決定更改路線,則無需更新網站中的每個網址。

我使用實際的「<」形式的>標籤的唯一原因是,如果我需要額外控制標記,我無法從Html.Form獲得(我現在無法想到一個示例) 。即使您選擇這樣做,也應該使用「Url.Action」助手從路由數據中獲取URL。例如:

<form action="<%= Url.Action("Create") %>"> 

至於你的第二個問題,我建議使用模型活頁夾。查看ScottGu's Blog瞭解這方面的一些細節。