控制器从视图接收参数--第二篇

来源:互联网 发布:数据库系统实现 4.2.1 编辑:程序博客网 时间:2024/06/05 10:50
 控制器从视图接收参数--第二篇
 
 
 在第一篇文章中写了两种很常用的方法,
 这里要写一个很重要的方法,
 那就是对于强类型的视图来说,怎么可以更直观让控制器接收参数!!!
 比如我的model里面有一个 personmodel
 
 namespace 从视图接收参数.Models
{
    public class PersonModel
    {
        public string Name { get; set; }
        public int Age { get; set; }
    }//end  class
}






然后有个相关的视图getperson
@model   从视图接收参数.Models.PersonModel
@{
    ViewBag.Title = "GetPerson";
}
<h2>
    GetPerson</h2>
@using (Html.BeginForm("GetPerson", "User"))
{
    <div>
        your name : @Html.TextBoxFor(m => m.Name)
        <br />
        your age : @Html.TextBoxFor(m => m.Age)
        <input id="Submit1" type="submit" value="submit" />
    </div>
}
上面指定的是强类型 PersonModel 所以TextBoxFor里面的lambda代表的是的是PersonModel类对象。








接着看看控制器里面的动作
public ActionResult GetPerson(从视图接收参数.Models.PersonModel person)
{
    string a = person.Name;
    /*接着写你需要的代码*/
    return View();
}
可以看到所接收的对象就是一个person 




最后扩展一下,虽然这里是强类型的例子,但你照样可以使用Request.Form["Name"] Request.Form["Age"]来得到信息!!

0 0