模型
using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Linq; using System.Web; namespace EFA.api.Models { [Table("Course")] public class Course { [Key] public int Id { get; set; } public string CName { get; set; } } }

using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Linq; using System.Web; namespace EFA.api.Models { [Table("Student")] public class Student { [Key] public int Id { get; set; } public string Name { get; set; } public int Age { get; set; } public int Score { get; set; } [ForeignKey("CourStu")] public int CId { get; set; } public Course CourStu { get; set; } } }

using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace EFA.api.Models { public class PageModel { public List<Student> list { get; set; } public int totalCount { get; set; } public int totalPage { get; set; } public int currentpage { get; set; } } }
倒层

using System; using System.Collections.Generic; using System.Data.Entity; using System.Linq; using System.Web; namespace EFA.api.DAL { public class StuDal<T> where T:class ,new() { MyContext db = new MyContext(); /// <summary> /// 显示 /// </summary> /// <returns></returns> public DbSet<T> Show() { return db.Set<T>(); } /// <summary> /// 添加 /// </summary> /// <param name="t"></param> /// <returns></returns> public int Add(T t) { db.Set<T>().Add(t); return db.SaveChanges(); } /// <summary> /// 删除 /// </summary> /// <param name="id"></param> /// <returns></returns> public int Del(int id) { var obj = db.Set<T>().Find(id); db.Set<T>().Remove(obj); return db.SaveChanges(); } /// <summary> /// 修改 /// </summary> /// <param name="t"></param> /// <returns></returns> public int Modify(T t) { db.Set<T>().Attach(t); db.Entry<T>(t).State = EntityState.Modified; return db.SaveChanges(); } } }
namespace EFA.api.DAL { using EFA.api.Models; using System; using System.Data.Entity; using System.Linq; public class MyContext : DbContext { //您的上下文已配置为从您的应用程序的配置文件(App.config 或 Web.config) //使用“MyContext”连接字符串。默认情况下,此连接字符串针对您的 LocalDb 实例上的 //“EFA.api.DAL.MyContext”数据库。 // //如果您想要针对其他数据库和/或数据库提供程序,请在应用程序配置文件中修改“MyContext” //连接字符串。 public MyContext() : base("name=MyContext") { } //为您要在模型中包含的每种实体类型都添加 DbSet。有关配置和使用 Code First 模型 //的详细信息,请参阅 http://go.microsoft.com/fwlink/?LinkId=390109。 public DbSet<Student> Students { get; set; } public DbSet<Course> Courses { get; set; }
public page GetUserInfos() { SqlParameter[] p = new SqlParameter[] { new SqlParameter("Pagesize",2), new SqlParameter("pageindex",1), new SqlParameter("where","查询的条件"), new SqlParameter("result",SqlDbType.NVarChar) }; p[3].Direction = System.Data.ParameterDirection.Output; page pa = new page(); pa.UserInfos = db.GetT<UserInfo>("ming", p); return pa; } } public class page { public string result { get; set; } public List<UserInfo> UserInfos { get; set; } } //public class MyEntity //{ // public int Id { get; set; } // public string Name { get; set; } //} }
控制器

using EFA.api.DAL; using EFA.api.Models; using Newtonsoft.Json; using OAWorkFlowUI.xls; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Net; using System.Net.Http; using System.Web.Http; namespace EFA.api.Controllers { public class DefaultController : ApiController { public StuDal<Student> stuDal = new StuDal<Student>(); public StuDal<Course> couDal = new StuDal<Course>(); [HttpGet] [Route("api/QueryS")] public PageModel GetStu(int pagesize,int currentpage,string name="") { if(currentpage<1) { currentpage = 1; } var list = stuDal.Show().Include("CourStu").ToList(); if(!string.IsNullOrEmpty(name)) { list = list.Where(x => x.Name.Contains(name)).ToList(); } var count = list.Count(); int page; if(count%pagesize==0) { page = count / pagesize; } else { page = count / pagesize + 1; } if(currentpage>page) { currentpage = page; } list = list.Skip((currentpage - 1) * pagesize).Take(pagesize).ToList(); var m = new PageModel(); m.list = list; m.currentpage = currentpage; m.totalCount = count; m.totalPage = page; return m; } /// <summary> ///批量 删除学生考试信息 /// </summary> /// <param name="id"></param> /// <returns></returns> [HttpGet] [Route("api/DelS")] public int del(string id) { string[] a = id.Split(','); int b = 0; for (int i = 0; i < a.Length; i++) { try { b += entdal.del(int.Parse(a[i])); } catch (Exception) { throw; } } return b; } /// <summary> /// 删除学生考试信息 /// </summary> /// <param name="id"></param> /// <returns></returns> [HttpGet] [Route("api/DelS")] public int Del(int id) { return stuDal.Del(id); } /// <summary> /// 添加学生考试信息 /// </summary> /// <param name="model"></param> /// <returns></returns> [HttpPost] [Route("api/AddS")] public int AddStu(Student model) { return stuDal.Add(model); } /// <summary> /// 导出 /// </summary> [HttpGet] [Route("api/Gete")] public void GetExcel() { List<Student> list = stuDal.Show().ToList(); string json = JsonConvert.SerializeObject(list); DataTable dt = JsonConvert.DeserializeObject<DataTable>(json); ExcelHelper.ExportByWeb(dt, "学生Excel", "StuExcle.xls"); } /// <summary> /// 绑定下拉 /// </summary> /// <returns></returns> [HttpGet] [Route("api/GetC")] public List<Course> GetCoure() { var list = couDal.Show().ToList(); return list; } /// <summary> /// 修改学生考试信息 /// </summary> /// <param name="model"></param> /// <returns></returns> [HttpPost] [Route("api/Modify")] public int ModifyU(Student model) { return stuDal.Modify(model); } /// <summary> /// 查找符合的学生信息 /// </summary> /// <param name="model"></param> /// <returns></returns> [HttpGet] [Route("api/GetId")] public List<Student> SelectId(int id) { List<Student> list = stuDal.Show().Where(x => x.Id.Equals(id)).ToList(); return list; } /// <summary> /// 修改单一字段(状态) /// </summary> /// <param name="model"></param> /// <returns></returns> [HttpGet] [Route("api/ModifySt")] public int ModifyState(int id) { var obj = stuDal.Show().Find(id); obj.Age = 1; return stuDal.Modify(obj); } } }
page /peɪdʒ/基本翻译n. 页;记录;大事件,时期;历史篇章;男侍者;(美国议员的)青年助理vt. 给…标页码vi. 翻书页,浏览n. (Page)人名;(西)帕赫;(英)佩奇;(意)帕杰;(法)帕日网络释义Page:蓓姬 ; 裴吉 ; 希腊相关查询PagePAGE