MVC常见的控制器,接口,数据层之间的操作

user_books_info 类

namespace CiWong.LearningLevel.Mapping
{public class user_books_info{/// <summary>/// 使用对象ID,个人版存放会员ID,班级版存放班级ID,校园版存放校园ID/// </summary>public long user_id { get; set; }/// <summary>/// 购买类型(1=个人版,2=班级版,3=学校版)/// </summary>public Int16 purchase_type { get; set; }/// <summary>/// 题册ID/// </summary>public long book_id { get; set; }/// <summary>/// 课本名称/// </summary>public string book_name { get; set; }/// <summary>/// 课本封面/// </summary>public string book_cover { get; set; }/// <summary>/// 使用对象名称/// </summary>public string user_name { get; set; }/// <summary>/// 使用类型(0=试用,1=已购买,2=赠送,3=校本课程)/// </summary>public int use_mode { get; set; }/// <summary>/// 添加时间/// </summary>public DateTime create_time { get; set; }/// <summary>/// 首次购买时间/// </summary>public DateTime bourght_time { get; set; }/// <summary>/// 最后一次续费时间/// </summary>public DateTime last_paid_time { get; set; }/// <summary>/// 过期时间/// </summary>public DateTime expire_date { get; set; }}
}

  

 

1,数据操作层(List<>)

 

/// <summary>/// 获取我购买的书籍/// </summary>/// <param name="userID"></param>/// <param name="pageIndex">页码</param>/// <param name="pageSize">条数</param>/// <returns></returns>public List<user_books_info> UserBookInfoGetByUserID(int userID, int pageIndex, int pageSize){List<user_books_info> bookList = new List<user_books_info>();string sql = @"CALL learn_user_books_info_getbyuserid(@UserID,@pageIndex,@pageSize);";MySqlParameter[] para = new MySqlParameter[]                                    {  new MySqlParameter("@UserID", userID),new MySqlParameter("@pageIndex", pageIndex),new MySqlParameter("@pageSize", pageSize)};using (var dr = MySqlHelper.ExecuteReader(DatabaseManager.Retrieve("wc_learninglevel_read"), sql, para)){while (dr.Read()){var bookInfo = new user_books_info();bookInfo.user_id = dr.GetInt32("user_id");bookInfo.purchase_type = dr.GetInt16("purchase_type");bookInfo.book_id = dr.GetInt64("book_id");bookInfo.book_name = dr.GetString("book_name");bookInfo.book_cover = dr.GetString("book_cover");bookInfo.user_name = dr.GetString("user_name");bookInfo.use_mode = dr.GetInt32("use_mode");bookInfo.create_time = dr.GetDateTime("create_time");bookInfo.bourght_time = dr.GetDateTime("bourght_time");//bookInfo.last_paid_time = dr.GetDateTime("last_paid_time");bookInfo.expire_date = dr.GetDateTime("expire_date");bookList.Add(bookInfo);}dr.Close();}return bookList;}

  

2,数据调用接口层(List<>)

  

        /// <summary>/// 获取我购买的书籍/// </summary>/// <param name="userID"></param>/// <param name="pageIndex">页码</param>/// <param name="pageSize">条数</param>/// <returns></returns>List<user_books_info> UserBookInfoGetByUserID(int userID, int pageIndex, int pageSize);    

  

3,控制器

   

ViewBag.UserLearns = this._Repository.UserBookInfoGetByUserID(userID, 1, 11);//购买的书籍

 

A, 数据操作层(IEnumerable<>)

   

        /// <summary>/// 获取文章列表 /// </summary>/// <param name="userID">用户ID</param>/// <param name="totalItem">总数据量</param>/// <param name="pageIndex">当前页</param>/// <param name="pageSize">每页数量</param>/// <param name="IsDelete">删除状态</param>/// <returns></returns>public IEnumerable<BlogContent> GetBlogContents(int userID, ref int totalItem, int pageIndex = 1, int pageSize = 20, bool IsFriend = false, bool IsManager = false){List<BlogContent> _list = new List<BlogContent>();MySqlConnection conn = new MySqlConnection(ConnectionString);MySqlDataReader dr = null;try{conn.Open();totalItem = Convert.ToInt32(MySqlHelper.ExecuteScalar(conn, string.Format("SELECT COUNT(0) FROM BlogContent WHERE uid=@uid AND IsDelete=0 AND IsPublished=1 {0}", IsManager ? string.Empty : IsFriend ? "AND IsPublic<=1" : "AND IsPublic=0"),new MySqlParameter("@uid", userID)));if (totalItem > 0){string sql = @"SELECT Id,CateId,Title,Intro,Published,Created,ViewNums,CopNums,IsPublic,IsTop,IsPublished,Iscopied,OriginID,uid,OrignAccountId,OriginAccountName,Flowers FROM BlogContentWHERE uid=@uid AND IsDelete=0 AND IsPublished=1 {0}ORDER BY IsTop DESC,Id DESC LIMIT @Begin,@Size";dr = MySqlHelper.ExecuteReader(conn, string.Format(sql, IsManager ? string.Empty : IsFriend ? "AND IsPublic<=1" : "AND IsPublic=0"),new MySqlParameter("@uid", userID),new MySqlParameter("@Begin", (pageIndex - 1) * pageSize),new MySqlParameter("@Size", pageSize));while (dr.Read()){_list.Add(new BlogContent(){Id = dr.GetInt64(0),CateId = dr.GetInt64(1),Title = dr.GetString(2),Intro = dr.GetString(3),Published = dr.GetDateTime(4),Created = dr.GetDateTime(5),ViewNums = dr.GetInt32(6),CopNums = dr.GetInt32(7),IsPublic = dr.GetByte(8),IsTop = dr.GetBoolean(9),IsPublished = dr.GetBoolean(10),Iscopied = dr.GetBoolean(11),OriginID = dr.GetInt64(12),uid = dr.GetInt32(13),OrignAccountId = dr.GetInt32(14),OriginAccountName = dr.GetString(15),Flower = dr.GetInt32(16)});}}}catch (MySqlException e){throw e;}finally{if (null != dr) dr.Close();conn.Close();}return _list;}

 

B,数据操作接口层(IEnumerable<>)

    

        /// <summary>/// 获取文章列表/// </summary>/// <param name="userID">用户ID集合</param>/// <param name="totalItem">总数据量</param>/// <param name="pageIndex">当前页</param>/// <param name="pageSize">每页数量</param>/// <param name="IsDelete">删除状态</param>/// <returns></returns>IEnumerable<BlogContent> GetBlogContents(List<int> userIDs, ref int totalItem, int pageIndex = 1, int pageSize = 20, bool IsFriend = false, bool IsManager = false);

  

C,控制器

     

var blogs1 = _blogManager.GetBlogContents(zone.UserID, ref totalItem, page, 10).ToList();

  

转载于:https://www.cnblogs.com/Aamir-Ye/p/4680747.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/419713.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端学习(1561):ng-class颜色切换

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>ng-app指令</title><style>.red {color:…

S3C6410 裸机硬件JPEG解码(转)

源&#xff1a;S3C6410 裸机硬件JPEG解码转载于:https://www.cnblogs.com/LittleTiger/p/4681864.html

java layoutmanager_Java Swing 探索(一)LayoutManager

BorderLayout FlowLayout GridLayout GridBagLayout CardLayout BoxLayout1.BorderLayoutjava.lang.Object--java.awt.BorderLayout将版面划分成东、西、南、北、中五个区域&#xff0c;将添加的组件按指定位置放置。BorderLayout.EAST BorderLayout.WEST BorderLay…

解决虚拟机VMware安装CentOS7.0识别不到网卡

由于Vmware虚拟网卡和linux兼容问题导致驱动无法正常安装&#xff0c;默认的网卡类型不兼容. 解决方法 找到我们的Vmware虚拟机文件夹&#xff0c;将VMware 虚拟机配置 (.vmx)&#xff0c;追加一条设置我们网卡类型 ethernet0.virtualDev "e1000" 原因 VMware 都在虚…

前端学习(1562):ng-hide,ng-show

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>ng-app指令</title><style>.red {color:…

java socat_socat安装使用方法

socat&#xff0c;一个多功能的网络工具&#xff0c;名字来源于SOcket CAT&#xff0c;是netcat的增强版&#xff0c;也就是netcat(扩展了设计&#xff0c;并有新的实现)。------------------------------------------------------------------------0x01 安装# debian/ubuntua…

前端学习(1563):ng-if

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>ng-app指令</title><style>.red {color:…

java spring注入 静态方法_java相关:spring为类的静态属性实现注入实例方法

java相关&#xff1a;spring为类的静态属性实现注入实例方法发布于 2020-3-31|复制链接在本篇文章里小妖给大家整理的是关于spring为类的静态属性实现注入实例方法&#xff0c;有需要的朋友们可以参考下。我们知道&#xff0c;正常情况下&#xff0c;spring的一个bean要依赖其他…

java 实现超时_如何实现带有超时的Runnable? - java

我目前有一个相当简单的SSL服务器/客户端项目&#xff0c;其中涉及标准Java后端和Android前端。与客户端发送数据后&#xff0c;我想尝试从服务器读取响应。但是&#xff0c;我遇到了一个小问题。服务器并不总是响应&#xff0c;因此我不得不以某种方式尝试以异步方式获取响应。…

数据大并发处理

网站并发一类 java用 netty在iis前边加 nginx 做负载均衡 你的请求都堵在一起了 让 用户直接访问 nginx 然后我在nginx 把用户请求分配给不同的iis处理也可以分给不同的不同的服务器处理。nginx 可以打开多个iis转载于:https://www.cnblogs.com/userbibi/p/4688792.html

身份证校验(c++实现)

描述&#xff1a; 我国国标〖GB 11643-1999〗中规定&#xff1a;公民身份号码是18位特征组合码&#xff0c;由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为&#xff1a;六位数字地址码&#xff0c;八位数字出生日期码&#xff0c;三位数字顺序码和一位数字校…

php 判断网络图片是否存,PHP判断远程图片或文件或url是否存在-180

PHP判断远程图片或文件或url是否存在-180我通常使用curl判断判断远程图片或文件是否存在&#xff1a;/*** link http://www.phpddt.com*/function url_exists($url) {$ch curl_init();curl_setopt ($ch, CURLOPT_URL, $url);//不下载curl_setopt($ch, CURLOPT_NOBODY, 1);//设…

js Date对象总结

Date在js中和Array类似&#xff0c;都是拥有自己的特殊方法的特殊对象。 由于平常用到Date着实不多&#xff0c;对它的了解颇浅。上周被问到怎么样获取某年某个月的天数&#xff0c;我当时想了一会儿&#xff0c;回答说有两种&#xff0c;一种自己写判断闰年的逻辑&#xff0c;…

php openssl做什么,php开启openssl的方法

php开启openssl的方法关注:294 答案:2 mip版解决时间 2021-02-02 21:13提问者笑低了眉眼2021-02-02 05:23我是一个小白&#xff0c;对于php完全不懂&#xff0c;所以希望大神能给我写一个傻瓜教程。php.ini在哪啊&#xff0c;怎么修改啊什么的都不懂。该用什么做什么&#xf…

LightOJ 1422 区间DP Halloween Costumes

d(i, j)表示第i天到第j天至少要穿多少件衣服。 先不考虑第i天和后面 i1 ~ j 天的联系&#xff0c;那就是至少要穿 1 d(i1, j)件衣服。 再看状态转移&#xff0c;如果后面第k(i1 ≤ k ≤ j)天所穿的衣服和第i天一样的话&#xff0c;那么完全可以把第i1~k-1天所穿的衣服脱下来。…

使用php创建一个注册表单,如何实现一个简单的注册表单

创建一个注册表单是非常容易的 - 它事实上意味着&#xff0c;你只需要创建一个表单&#xff0c;表单将更新一些User的模型对象(这个例子是一个Doctrine实体)并保存它。受欢迎的FOSUserBundle 提供了一个注册表单&#xff0c;重置密码表单和其他用户管理功能。如果你先前没有一个…

php 图片不让下载,php让图片可以下载的方法

php让图片可以下载的方法发布于 2014-10-04 11:16:18 | 102 次阅读 | 评论: 0 | 来源: 网友投递PHP开源脚本语言PHP(外文名: Hypertext Preprocessor&#xff0c;中文名&#xff1a;“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点&#xff0c;…

while语法php格式,PHP While 循环

循环执行代码块指定的次数&#xff0c;或者当指定的条件为真时循环执行代码块。PHP 循环在您编写代码时&#xff0c;您经常需要让相同的代码块一次又一次地重复运行。我们可以在代码中使用循环语句来完成这个任务。在 PHP 中&#xff0c;提供了下列循环语句&#xff1a;while–…