/// <summary>
        /// 根据条件,使用存储过程分页查询电影
        /// </summary>
        /// <param name="name"></param>
        /// <param name="time"></param>
        /// <param name="size"></param>
        /// <param name="index"></param>
        /// <returns></returns>
        [WebMethod]
        public string SearchMovince(string name,string time, int size, int index)
        {
            //1、定义存储过程命令
            string sql = "up_SearchMovie";
            //2、定义sql参数对象
            SqlParameter paraSize = new SqlParameter("@size", size);
            SqlParameter paraIndex = new SqlParameter("@index", index);
            SqlParameter paraName = new SqlParameter("@mName", name);
            SqlParameter paraTime = new SqlParameter("@sTime", time);
            SqlParameter count = new SqlParameter("@totalCount", SqlDbType.Int);
            count.Direction = ParameterDirection.Output;
            SqlParameter page = new SqlParameter("@totalPage", SqlDbType.Int);
            page.Direction = ParameterDirection.Output;
            //3、定义数组,保存四个参数
            SqlParameter[] paras = { paraSize, paraIndex, count, page, paraName, paraTime };
            //4、调用DBHelper,执行存储过程
            DataTable dt = DBHelper.GetDataTable(sql, paras);
            //5、将返回的信息封装到PageList对象
            PageList list = new PageList();
            list.TotalCount = Convert.ToInt32(count.Value);
            list.TotalPage = Convert.ToInt32(page.Value);
            list.MovieList = JsonConvert.DeserializeObject<List<Movie>>(JsonConvert.SerializeObject(dt));
            return JsonConvert.SerializeObject(list);
        }
 
 
//Mvc调用

 public ActionResult Search(int id, string txtName, string txtTime)
        {
            /*点击上页或者下页,传递的是null*/
            if (txtTime != null)
            {
                name = txtName;
                time = txtTime;
            }
            string json = webService.SearchMovince(name, time, 10, id);
            PageList pageList = JsonConvert.DeserializeObject<PageList>(json);
            ViewBag.count = pageList.TotalCount;
            ViewBag.page = pageList.TotalPage;
            ViewBag.index = id;
            List<Movie> list = pageList.MovieList.Where(s => (string.IsNullOrEmpty(txtName) ? true : s.MNane.Contains(txtName)) &&
                       (string.IsNullOrEmpty(txtTime) ? true : s.PlayTime == Convert.ToDateTime(txtTime))).ToList();
            return PartialView("_PartialMovie", list.ToList());
        }
 
///html
共 @ViewBag.count 条记录,共 @ViewBag.page 页,当前显示第 @ViewBag.index 页
    @Ajax.ActionLink("首页", "search", new { id = 1 }, new AjaxOptions { UpdateTargetId = "divMovie" })
    @{
        if (ViewBag.index == 1)
        {
            <span>上页</span>
        }
        else
        {
            @Ajax.ActionLink("上页", "search", new { id = ViewBag.index - 1 }, new AjaxOptions { UpdateTargetId = "divMovie" })
        }
    }
    @{
        if (ViewBag.index == ViewBag.page)
        {
            <span>下页</span>
        }
        else
        {
            @Ajax.ActionLink("下页", "search", new { id = ViewBag.index + 1 }, new AjaxOptions { UpdateTargetId = "divMovie" })
        }
    }
    @Ajax.ActionLink("尾页", "search", new { id = ViewBag.page }, new AjaxOptions { UpdateTargetId = "divMovie" })
</p>

存储过程 Mvc 的调用的更多相关文章

  1. MVC 5 调用存储过程参数配置方法-Procedure or function 'UP_***' expects parameter '@****', which was not supplied.

    MVC 5 调用存储过程参数配置方法-Procedure or function 'UP_***' expects parameter '@****', which was not supplied. ...

  2. Oracle存储过程中异步调用的实际操作步骤

    本文标签:Oracle存储过程 我们都知道在Oracle数据库的实际应用的过程中,我们经常把相关的业务处理逻辑,放在Oracle存储过程中,客户端以通过ADO来进行相关的调用  .而有些相关的业务逻辑 ...

  3. Oracle存储过程创建及调用(转)

    在大型数据库系统中,有两个很重要作用的功能,那就是存储过程和触发器.在数据库系统中无论是存储过程还是触发器,都是通过SQL 语句和控制流程语句的集合来完成的.相对来说,数据库系统中的触发器也是一种存储 ...

  4. Aspnet MVC 异步调用

    一个简图来描述下Aspnet MVC下的异步调用 { request } / \/ -------ISS------- > work thread | \ | \ route - aysn co ...

  5. MySQL存储过程_创建-调用

    阅读目录:MySQL存储过程_创建-调用-参数 存储过程:SQL中的"脚本" 创建存储过程 调用存储过程 存储过程体 语句块标签 存储过程的参数 in:向过程里传参 out:过程向 ...

  6. Oracle存储过程创建及调用

    在大型数据库系统中,有两个很重要作用的功能,那就是存储过程和触发器.在数据库系统中无论是存储过程还是触发器,都是通过SQL 语句和控制流程语句的集合来完成的.相对来说,数据库系统中的触发器也是一种存储 ...

  7. MySQL数据库实验六:存储过程建立与调用

    实验六  存储过程建立与调用 一.实验目的 理解存储过程的概念.建立和调用方法. 二.实验环境 三.实验示例 1.定义一个函数,按性别计算所有学生的平均年龄. CREATE FUNCTION aver ...

  8. .NET MVC+ EF+调用存储过程 多表联查以及VIEW列表显示

    直接上干活,至于网上的一大堆处理方式不予评论,做好自己的就是最好的,供大家不走弯路 1.view页面 <link href="~/Content/bootstrap.css" ...

  9. MVC c# 调用sql的存储过程

    var hid = new SqlParameter { ParameterName = "HistoryId", Value = history.Id, Direction = ...

随机推荐

  1. Linux修改/etc/profile配置错误command is not found自救方法

    export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

  2. 【UI测试】--易用性

  3. Java类加载机制及自定义加载器

    转载:https://www.cnblogs.com/gdpuzxs/p/7044963.html Java类加载机制及自定义加载器 一:ClassLoader类加载器,主要的作用是将class文件加 ...

  4. svn 修改原来包名的方法和会报的错误

    SVN E200009 which is not part of the commit; both sides of the move must be committed together 在svn上 ...

  5. android 应用商店

    下面更多 http://wiki.youmi.net/Wiki/PromotionChannelIDs 小米 http://market.xiaomi.com/dev安智市场 http://dev.a ...

  6. IntellJ IDEA2017 springboot2.0.2 替代@SpringBootApplication方式

    如果不想用@SpringBootApplication,那么可以用@EnableAutoConfiguration 和@ComponentScan替代@SpringBootApplication 详情 ...

  7. hadoop hive组件介绍及常用cli命令

    Hive架构图 Hive产生原因 1 关系型数据库以产生多年sql成熟 2 简化开发降低成本 3 java成员可编写udf函数 Hive是什么 Hive是基于hadoop的一个数据库工具,使用Hql作 ...

  8. 小论文matlab作图技巧

    小论文matlab作图技巧 编辑->复制选项 编辑->图形属性 图中右击->字型 编辑->复制图片,即可. 效果: 宽:5.9高: 7.91

  9. 乌龙之Ignoring query to other database问题

    问题现象: [root@zxdb05 ~]# mysql -root -pEnter password: Welcome to the MySQL monitor.  Commands end wit ...

  10. 给Java开发者的Scala教程

    author:Michel Schinz,Philipp Haller 1. 简介 本文将该要的介绍Scala语言和其编译.这里假设读者已经有一定的java开发经验,需要概要的了解他们可以用Scala ...