MVC常见的控制器,接口,数据层之间的操作
user_books_info 类
namespace CiWong.LearningLevel.Mapping
{
public class user_books_info
{
///
/// 使用对象ID,个人版存放会员ID,班级版存放班级ID,校园版存放校园ID
///
public long user_id { get; set; }
///
/// 购买类型(1=个人版,2=班级版,3=学校版)
///
public Int16 purchase_type { get; set; }
///
/// 题册ID
///
public long book_id { get; set; }
///
/// 课本名称
///
public string book_name { get; set; }
///
/// 课本封面
///
public string book_cover { get; set; }
///
/// 使用对象名称
///
public string user_name { get; set; }
///
/// 使用类型(0=试用,1=已购买,2=赠送,3=校本课程)
///
public int use_mode { get; set; }
///
/// 添加时间
///
public DateTime create_time { get; set; }
///
/// 首次购买时间
///
public DateTime bourght_time { get; set; }
///
/// 最后一次续费时间
///
public DateTime last_paid_time { get; set; }
///
/// 过期时间
///
public DateTime expire_date { get; set; }
}
}
1,数据操作层(List<>)
////// 获取我购买的书籍 /// /// /// 页码 /// 条数 ///public List UserBookInfoGetByUserID(int userID, int pageIndex, int pageSize) { List bookList = new List (); 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<>)
////// 获取我购买的书籍 /// /// /// 页码 /// 条数 ///List UserBookInfoGetByUserID(int userID, int pageIndex, int pageSize);
3,控制器
ViewBag.UserLearns = this._Repository.UserBookInfoGetByUserID(userID, 1, 11);//购买的书籍
A, 数据操作层(IEnumerable<>)
////// 获取文章列表 /// /// 用户ID /// 总数据量 /// 当前页 /// 每页数量 /// 删除状态 ///public IEnumerable GetBlogContents(int userID, ref int totalItem, int pageIndex = 1, int pageSize = 20, bool IsFriend = false, bool IsManager = false) { List _list = new List (); 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 BlogContent WHERE 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<>)
////// 获取文章列表 /// /// 用户ID集合 /// 总数据量 /// 当前页 /// 每页数量 /// 删除状态 ///IEnumerable GetBlogContents(List 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();