MVC後臺獲取數據和插入數據的三種方式
阿新 • • 發佈:2019-03-30
http style jin port username 返回 userinfo 如何 info
MVC模式下,從前端獲取數據返回後臺,總共有三種形式。下面的代碼示例將演示如何將數據返回到後端。
一、首先我們看看表單代碼,註意input標簽中name的值。
1 <html> 2 <head runat="server"> 3 <meta name="viewport" content="width=device-width" /> 4 <title>Register</title> 5 </head> 6 <body> 7 <div> 8<form method="post" action="AddUserInfo"> 9 用戶名:<input type="text" name="txtname"/><br /> 10 密碼:<input type="password" name="txtpwd"/><br /> 11 郵箱:<input type="text" name="txtEmail"/><br /> 12 <input type="submit" value="添加"/> 13 </form> 14 </div> 15 </body> 16 </html>
二、下面的代碼展示如何向後端提交數據
1. 通過request方法獲取前端表單提交的數據。
1 /// <summary> 2 /// 第一種添加數據的方法,通過request從前端獲取數據 3 /// </summary> 4 /// <returns></returns> 5public ActionResult AddUserInfo2() 6 { 7 Models.Userinfo userinfo = new Models.Userinfo(); 8 9 userinfo.username = Request["txtname"]; 10 userinfo.password = Request["txtpwd"]; 11 userinfo.Emil = Request["txtEmail"]; 12 userinfo.CreateDate = System.DateTime.Now; 13 Models.wangjin2Entities1 db = new Models.wangjin2Entities1(); 14 db.Userinfo.Add(userinfo); 15 if (db.SaveChanges() > 0) 16 { 17 return Content("添加成功"); 18 //return Response("index"); 19 } 20 else 21 { 22 return Content("添加失敗"); 23 } 24 }
2. 第二種方法:方法的參數的名稱與表單元素name屬性一致,會自動填充
1 /// <summary> 2 /// 第二種方法:如果方法的參數的名稱與表單元素name屬性一致,會自動填充 3 /// </summary> 4 /// <returns></returns> 5 public ActionResult AddUserInfo(string txtname, string txtpwd, string txtEmail) 6 { 7 Models.Userinfo userinfo = new Models.Userinfo(); 8 //因為方法的參數的名稱和表單元素name屬性一致,所以該處可以不使用request方法獲取值 9 //userinfo.username = Request["txtname"]; 10 //userinfo.password = Request["txtpwd"]; 11 //userinfo.Emil = Request["txtEmail"]; 12 userinfo.CreateDate = System.DateTime.Now; 13 Models.wangjin2Entities1 db = new Models.wangjin2Entities1(); 14 db.Userinfo.Add(userinfo); 15 if (db.SaveChanges() > 0) 16 { 17 return Content("添加成功"); 18 //return Response("index"); 19 } 20 else 21 { 22 return Content("添加失敗"); 23 } 24 }
3. 第三種方法:表單元素的值和數據庫實例的類的屬性一致,會自動填充
3.1 、什麽是數據庫實例的類:就是指通過EF操作數據庫之後生成的類,如下方圖2
圖1. 圖2.
3.2 第三種形式的代碼展示:
1 /// <summary> 2 /// 第三種方法:表單元素的值和數據庫實例的類的屬性一致,會自動填充 3 /// </summary> 4 /// <param name="userinfo"></param> 5 /// <returns></returns> 6 public ActionResult AddUserInfo1(Userinfo userinfo) 7 { 8 userinfo.CreateDate = System.DateTime.Now; 9 Models.wangjin2Entities1 db = new Models.wangjin2Entities1(); 10 db.Userinfo.Add(userinfo); 11 if (db.SaveChanges() > 0) 12 { 13 return Content("添加成功"); 14 //return Response("index"); 15 } 16 else 17 { 18 return Content("添加失敗"); 19 } 20 }
MVC後臺獲取數據和插入數據的三種方式