/// <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. mysql 压缩版安装

    环境介绍:win2008_x64+mysql5.7.10  64位 1.将压缩包解压到d:\\mysql目录,并将mysql目录中的my-default.ini 重命名为my.ini 2.将my.in ...

  2. Flex的Number和Text

    今天要说的问题不是Number和String转换的问题.而是使用时容易出的一些错误: public static function ToFixed(value:Number, digits:uint ...

  3. response设置编码格式

    response设置编码的三种方式 在java后台的Action代码或者Servlet代码中用response的方法来设置输出内容的编码方式,有以下三个方法: 1.response.setCharac ...

  4. canvas 实现太阳系效果

    一:创建画布 <canvas width="1000" height="1000" id="solar" style="ba ...

  5. 惊讶于word 的流畅

    word 这个产品 的操作流畅 比自家产品OneNote 比wps 强的太多 用后的体验是,再用其他的编译文字的软件,便感觉操作不畅,不流利,不舒服.(使人曾经沧海难为水,自然而然的不用别人的产品,w ...

  6. java web各个技术细节总结

    HTML 非表单标签 1.b 粗体   u 下划线 i 斜体 del 删除效果 2.a  超链接  href  target=-blank 3.img 图片 4.frameset(frame)  框架 ...

  7. IPython:一种交互式计算和开发环境(魔术命令,快捷键)

    %run命令 在IPython会话环境中,所有文件都可以通过%run命令当做Python程序来运行. 假设在ipython_script_test.py中存放了一段简单的脚本,如下所示: def f( ...

  8. java常量

    一.使用常量的好处 1.便于维护

  9. LPCSTR与CString转换

    1.LPCSTR是Win32和VC++所使用的一种字符串数据类型,L表示long,P表示指针,C表示常量,STR表示字符串. 2.LPCSTR转化为CString: LPCSTR  lpStr=&qu ...

  10. 华为机试-iNOC产品部-杨辉三角的变形

    题目描述 1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 11 4 10 16 19 16 10 4 1以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数,左上角数 ...