Mvc参数的传递

<1>

Home控制器

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Data;
using MVC.Models;
using System.Data.SqlClient;
using LLSql.DAL;

namespace MVC.Controllers
{
    public class HomeController : Controller
    {
        //
        // GET: /Home/

        public ActionResult Index()
        {
            List<UserInfo> userinfo = LLSql.DAL.SqlHelper.SelectDataToList<UserInfo>("select * from T_UserInfo");

            ViewData["UserInfo"] = userinfo;
            return View("Show");
        }

        public ActionResult Delete(int id)
        {
            LLSql.DAL.SqlHelper.ExecuteNonQuery("delete from T_UserInfo where [email protected]", new SqlParameter("id", id));
            return View("Show");
        }
        [HttpGet]
        public ActionResult Edit(int id)
        {
            UserInfo userinfo = (UserInfo)SqlHelper.SelectDataToList<UserInfo>("select * from T_UserInfo where [email protected]", new System.Data.SqlClient.SqlParameter("id", id)).First();

            ViewData.Model = userinfo;

            return View("Edit");
        }

        public ActionResult Edit(UserInfo userinfo)
        {
            SqlHelper.ExecuteNonQuery("update T_Userinfo set [email protected], [email protected] where [email protected]",
                new SqlParameter("name", userinfo.Name),
                new SqlParameter("age", userinfo.Age),
                new SqlParameter("id", userinfo.Id));
            return View("Show");
        }

    }
}

UserInfo Model

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace MVC.Models
{
    public class UserInfo
    {
        public int Id { get; set; }

        public string Name { get; set; }

        public int Age { get; set; }

    }
}

Show视图(用来展示数据)

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
<%@ Import Namespace="MVC.Models" %>
<%@ Import Namespace="LLSql.DAL" %>
<!DOCTYPE html>

<html>
<head runat="server">
    <meta name="viewport" content="width=device-width" />
    <title>Show</title>
    <script src="../../Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function () {
            $("a:contains('删除')").click(function () {  return confirm("确定要删除吗") })
        })
    </script>

</head>
<body>
    <div>
       <% List<UserInfo> list= SqlHelper.SelectDataToList<UserInfo>("select * from T_UserInfo" ) ;%>
       <table>
            <tr><th>编码</th><th>姓名</th><th>年龄</th><th>删除</th></tr>
            <% foreach (var item in list)
               { %>
                    <tr><td><%: item.Id%></td><td><%:item.Name %></td><td><%:item.Age %></td><td> <%:Html.ActionLink("删除","Delete", "Home", new { id = item.Id }, new { })%></td>

                    <td> <%:Html.ActionLink("编辑", "Edit", "Home", new { id = item.Id }, new { })%></td></tr>

             <%} %>  

       </table>
    </div>
</body>
</html>

Edit 视图 (用来编辑)

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<MVC.Models.UserInfo>" %>
<%@ Import Namespace="MVC.Models" %>
<%@ Import Namespace="LLSql.DAL" %>
<!DOCTYPE html>

<html>
<head runat="server">
    <meta name="viewport" content="width=device-width" />
    <title>Edit</title>
</head>
<body>
<% using (Html.BeginForm())
   {%>
    <div>
        <table>
            <tr><th>编码</th><td><%:Model.Id%> <%: Html.HiddenFor(u => u.Id)%></td></tr>
            <tr><td>姓名</td><td><%:Html.TextBoxFor(u => u.Name)%> </td></tr>
            <tr><td>年龄</td><td><%: Html.TextBoxFor(u => u.Age)%> </td></tr>
            <tr><td colspan='2'><input type="submit" value="保存"/></td></tr>
        </table>
    </div>
    <%} %>
</body>
</html>

效果



时间: 2024-08-19 08:31:12

Mvc参数的传递的相关文章

SpringMVC入门(二)—— 参数的传递、Controller方法返回值、json数据交互、异常处理、图片上传、拦截器

一.参数的传递 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px Helvetica } 1.简单的参数传递 1 /* @RequestParam用法:入参名字与方法名参数名不一致时使用{ 2 * value:传入的参数名,required:是否必填,defaultValue:默认值 3 * } 4 */ 5 @RequestMapping("itemEdit") 6 public ModelAndView itemEdit(@R

js函数中参数的传递

先看一道JS的笔试题: var setObj=function(o){ o.name="xiaoming"; o={}; o.name="xiaohong"; } var p={name:"xixi",age:24}; setObj(p); console.log(p); 答案是{name:xiaoming,age24}: 在JavaScript中函数参数默认为引用类型. 在阅读本章节之前建议参阅一下两章节:1.值类型可以参阅javascript

[ jquery 过滤器nextAll(expr) ] 此方法用于在选择器的基础之上搜索被选元素的后面的所有同级元素,此方法参数只能传递表达式,无法传递其他类型

此方法用于在选择器的基础之上搜索被选元素的后面的所有同级元素,此方法参数只能传递表达式,无法传递其他类型 可以使用此方法向里面传递表达式的方法实现和jqueryObj.next()相同的效果 实例: <html lang='zh-cn'> <head> <title>Insert you title</title> <meta http-equiv='description' content='this is my page'> <meta

[ jquery 过滤器next(expr) ] 此方法用于在选择器的基础之上搜索被选元素的后一个同级元素,此方法参数只能传递表达式,无法传递其他类型

此方法用于在选择器的基础之上搜索被选元素的后一个同级元素,此方法参数只能传递表达式,无法传递其他类型: 实例: <html lang='zh-cn'> <head> <title>Insert you title</title> <meta http-equiv='description' content='this is my page'> <meta http-equiv='keywords' content='keyword1,key

JavaScript中参数的传递

变量类型 了解参数的传递之前我们来复习下变量的类型,JavaScript中的变量有5个基本数据类型(Undefined, Null, Boolean, Number, String)和引用数据类型(Object,Function,Array等). 基本类型和引用类型的区别 // 声明一个String类型的变量 var str = "string"; // 声明一个引用类型的变量,并添加属性 var person = new Object(); person.name = "J

vsnprintf的使用以及c可变参数的传递机制

int vsnprintf (char * s, size_t n, const char * format, va_list arg ); cplusplus.com给出的解释是:Write formatted data from variable argument list to sized buffer 意思是把格式化的字符串format的最多n位字符写入缓冲区s中,format的参数列表为arg 其返回一个整型数ret,当且仅当ret非负,且ret小于n,表示函数运行成功,把ret个字符

Java中,函数参数的传递,是值传递还是引用传递

当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?  答:是值传递. 可以这么理解:有一个Person(name="S"),作为参数传给一个方法,在此方法中将此Person重新设置name=“B”,那么有一下结论 ①这个Person还是这个Person,一直都是他,但是他的名字被改了,不管是原来的引用还是方法里的引用,引用的都是一个对象,所以,所有引用的值都变了 ②如果在方法中重新new了一个Person赋给参数,

web页面中参数的传递方法

在web页面中参数的传递方法多样,主要有以下几种: Viewstate,Querystring,Session, Application,Cookie,Cache. Viewstate: 特点:服务启启动的各种控件的视图状态:包括控件的所有属性值:Enableviewstate可以启用和禁用视图状态:        优点:防止新产生一个页面实例后,丢失前一个页面的状态信息: 例如:在用户登录注册验证过程中,无须使用导致服务器往返行程的代码,我们只需要在客户端进行验证就可以了.另外有些控件的初始化

Shell编程基础教程7--脚本参数的传递

7.脚本参数的传递    7.1.shift命令        简介:            shift n        每次将参数位置向左偏移n位        例子 #!/bin/bash usage() { echo "usage:`basename $0` filenames" } totalline=0 #下面的语句中 $# 表示参数的个数 if [ $# -lt 2 ] then usage fi while [ $# -ne 0 ] do line=`cat $1 |