利用Ado.net实体数据模型操作数据
public partial class LibraryManageEntities : DbContext { public LibraryManageEntities() : base("name=LibraryManageEntities") { } protected override void OnModelCreating(DbModelBuilder modelBuilder) { throw new UnintentionalCodeFirstException(); } public DbSet<AdmSet> AdmSet { get; set; } public DbSet<BookBorrow> BookBorrow { get; set; } public DbSet<BookCase> BookCase { get; set; } public DbSet<BookInfo> BookInfo { get; set; } public DbSet<bookType> bookType { get; set; } public DbSet<ReaderInfo> ReaderInfo { get; set; } public DbSet<readerType> readerType { get; set; } public DbSet<User> User { get; set; } }
现在有多张数据表
我现在操作获取AdmSet的所有数据的代码为
public ActionResult GetAllUserInfo() { int pageIndex = Request["page"] == null ? 1 : int.Parse(Request["page"]); int pageSize = Request["rows"] == null ? 10 : int.Parse(Request["rows"]); int total = 0; using (LibraryManageEntities db = new LibraryManageEntities()) { var temp = from u in db.AdmSet select u; total = temp.Count(); var users = temp.OrderBy(s => s.Id) .Skip<AdmSet>((pageIndex - 1) * pageSize).Take<AdmSet>(pageSize); var data = new { total = total, rows = users.ToList<AdmSet>() }; return Json(data); } }
因为现在我又要操作表BookBorrow了,也同时是获取数据表所有数据,逻辑代码都是一样的,现在想到的是只能把上面的代码又copy一下,只是将AdmSet改成BookBorrow,这样代码就很冗余了,有没有像泛型或者更好的方法那样将其封装起来,我只要传入一个类型就可以进行很方便的操作了!