[asp.net mvc] 将视图中的表单数据传递到控制器中

在ASP.NET MVC框架中,将视图中的数据传递到控制器中,主要通过发送表单实现的。具体使用中,主要使用以下三种方法。

1.通过Request.Form读取表单数据

表单代码:

1 @using (Html.BeginForm("Person", "Default3"))
2 {
3     @Html.TextBox("tFirstName")
4     <br />
5     @Html.TextBox("tLastName")
6     <br />
7     <input type="submit" value="提交" />
8 }

使用Request.Form提取表单数据:

1         [HttpPost]
2         public JsonResult Person()
3         {
4             JsonResult result = new JsonResult();
5             result.Data = new object[] { Request.Form["FirstName"], Request.Form["LastName"] };
6             return result;
7         }

2.通过FormCollection读取表单数据

1         [HttpPost]
2         public JsonResult Person(FormCollection form)
3         {
4             JsonResult result = new JsonResult();
5             result.Data = new object[] { form["FirstName"], form["LastName"] };
6             return result;
7         }

3、直接读取表单数据对象

首先定义一个Person类如下:

1     public class Person
2     {
3         public string FirstName { get; set; }
4         public string LastName { get; set; }
5     }

Person()的实现:

1         [HttpPost]
2         public JsonResult Person(Person person)
3         {
4             JsonResult result = new JsonResult();
5             result.Data = new object[] { person.FirstName, person.LastName };
6             return result;
7         }

Person类的字段名必须和表单中input的name一致。

或者:

1         [HttpPost]
2         public JsonResult Person(string FirstName, string LastName)
3         {
4             JsonResult result = new JsonResult();
5             result.Data = new object[] { FirstName, LastName };
6             return result;
7         }

参数名必须和表单中input的name一致。

时间: 2024-10-13 16:04:55

[asp.net mvc] 将视图中的表单数据传递到控制器中的相关文章

ASP.NET MVC 中将数据从View传递到控制器中的三种方法(表单数据绑定)

转自:http://www.cnblogs.com/zyqgold/archive/2010/11/22/1884779.html 在ASP.NET MVC框架中,将视图中的数据传递到控制器中,主要通过发送表单实现的.具体使用中,主要使用以下三种方法. 1.通过Request.Form读取表单数据        2.通过FormCollection读取表单数据        3.直接读取表单数据对象 下边是我学习这些东西时的一点总结 1.通过Request.Form读取表单数据      首先定

ASP.NET MVC 5 - 视图

原文:ASP.NET MVC 5 - 视图 在本节中,你要去修改HelloWorldController类,使用视图模板文件,在干净利索地封装的过程中:客户端浏览器生成HTML. 您将创建一个视图模板文件,其中使用了ASP.NET MVC 3所引入的Razor视图引擎(Razor view engine).Razor视图模板文件使用.cshtml文件扩展名,并提供了一个优雅的方式来使用C#语言创建所要输出的HTML.用Razor编写一个视图模板文件时,将所需的字符和键盘敲击数量降到了最低,并实现

Asp.Net Mvc Razor视图语法

    Asp.Net Mvc Razor视图语法 [email protected]符号输出变量值 2.使用C#语法嵌套Html标签循环输出NameList的值:使用@{C#语法代码}: 3.输出@符号使用两个@@ 4.服务器注释使用@*注释内容*@ [email protected]:输出文本,或者使用<text></text> 6.在@()括号进行简单的操作或运算 [email protected]()或@{}可以输出带有html标签的字符串 8.Razor可以智能识别邮箱写

ASP.NET MVC 部分视图

转自http://blog.csdn.net/skyandcode/article/details/22594355 [部分视图] ASP.NET MVC 里的部分视图,相当于 Web Form 里的 User Control.我们的页面往往会有许多重用的地方,可以进行封装重用.使用 部分视图 :  1. 可以简写代码.2. 页面代码更加清晰.更好维护. [如何使用] 在视图里有多种方法可以 加载部分视图,包括: Partial()  Action()  RenderPartial()  Ren

隐藏ASP.NET MVC的版本信息,使其不在HTTP Header中显示

隐藏ASP.NET MVC的版本信息,使其不在HTTP Header中显示. 一.隐藏:X-AspNetMvc-Version 在Global.asax文件的Application_Start方法中添加: MvcHandler.DisableMvcResponseHeader = true; 二.移除 Header 中的 Server 在Global.asax文件中添加: protected void Application_PreSendRequestHeaders(object sender

strus2中获取表单数据 两种方式 属性驱动 和模型驱动

strus2中获取表单数据 两种方式 属性驱动 和模型驱动 属性驱动 /** * 当前请求的action在栈顶,ss是栈顶的元素,所以可以利用setValue方法赋值* 如果一个属性在对象栈,在页面上可以根据name属性进行回显*/ /** * 属性驱动实现的条件:* 1.当前请求的action在栈顶,所以action中的属性就暴漏出来了* 2.获取页面上表单的元素,整合成一个map * 3.调用setValue方法赋值*/ 1 package cn.itcast.struts2.sh; 2 3

VBA 把一个工作簿中的表的数据传递到另一个工作簿中

Private Sub CommandButton2_Click() For Z = 2 To Sheet2.[b65536].End(3).Row Next Application.ScreenUpdating = False Dim j As Integer Dim souce As Worksheet Dim target As Workbook Set souce = ThisWorkbook.Worksheets("正式表") Set target = Workbooks.O

使用asp.net mvc部分视图渲染html

为了提升用户体验,一般我们采用ajax加载数据然后根据数据渲染html,渲染html可以使用前端渲染和服务器端渲染. 前端渲染 使用前端模版引擎或MVC框架,例如underscore.js的template或者是使用angular.js等框架,当然也可以不用任何框架自己拼接html. <!DOCTYPE html> <html> <head> <title>underscore.js的template渲染html</title> </hea

ASP.NET MVC 对于视图引擎的优化

我经常使用asp.net MVC框架来做网站.总的来说,MVC框架是一个非常优秀的框架.相对于曾经的web form模式,我个人感觉分工更加合理思路也更加清晰,但是交给开发人员的工作也相对变多了. 当使用标准配置的时候在新建了控制器,还没有建视图的时候,运行网站,访问这个我们可以看到 因此我们可以判断,默认的视图引擎首先加载的顺序如上图所示 ~/Views/Home/Index.aspx~/Views/Home/Index.ascx~/Views/Shared/Index.aspx~/Views