ASP.NET MVC View向Controller传值方式总结
1:QueryString传值
1)也可以使用new{}来为form的action增加querystring
2)在controler里使用Request.QueryString["word"]获取值
例如:
<li> <%= Html.ActionLink("Browse", "Browse", "User", new { word = "word1" }})%></li>
Controler页面:
public ActionResult Browse(string word) { ViewData["word"] = Request.QueryString["word"]; ViewData["word2"] = word; return View(); }
2:Post传值
例如:直接使用mehod=post
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title></title> </head> <body> <div> <form action="/User/AddRelease" method="post"> <ul> <li>用户名1:<input type="text" value="" name="UserName2"/></li> <li>密码1: :<input type="text" value="" name="Password2"/></li> </ul> <input type="submit" value="添加" /> </form> </body> </html>
例如2:也可以使用HtmlHelper.post方法
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title></title> </head> <body> <div> @using(Html.BeginForm("AddRelease", "User", FormMethod.Post)) { <ul> <li>用户名: @Html.TextBox("UserName")</li> <li>密码: @Html.TextBox("Password")</li> </ul> <input type="submit" value="添加" /> } </body> </html>