zoukankan      html  css  js  c++  java
  • EF的使用

     public class ShenModel
        {
            public int Id { get; set; }   //审核编号
            public string Name { get; set; }   //提交人
            public string Remark { get; set; }   //审核内容
            public DateTime STime { get; set; }   //审核时间
            public string SName { get; set; }   //审核人
            public int SBit { get; set; }   //状态
    
            public SectionInfo SectionInfo { get; set; }//外键
            public int SectionInfoId { get; set; } //部门编号
    
            
        }
     public class SectionInfo
        {
            public int Id { get; set; } //部门编号
            public string BName { get; set; } //部门名称
        }
    public class PageModel
        {
            //分页
            public List<ShenModel> list { get; set; }
    
            public int PageCount { get; set; }
        }
    namespace DAL
    {
        public class ShDBHelper : DbContext
        {
            public DbSet<SectionInfo> SectionInfo { get; set; }
            public DbSet<ShenModel> ShenModel { get; set; }
        }
    }
    namespace UI.Controllers
    {
        public class SectionController : ApiController
        {
            //实例化ShDBHelper
            ShDBHelper dh = new ShDBHelper();
    
            #region 显示
            [HttpGet]
            public PageModel Show(string name, int pageIndex = 1, int pageSize = 2)
            {
                PageModel page = new PageModel();
                if (name == null)
                {
                    name = "";
                }
                page.list = dh.ShenModel.Include("SectionInfo")
                    .Where(x => x.Name.Contains(name))
                    .OrderBy(x => x.Id)
                    .Skip((pageIndex - 1) * pageSize)
                    .Take(pageSize)
                    .ToList();
                //总计记录数
                var count = dh.ShenModel.Include("SectionInfo")
                    .Where(x => x.SName.Contains(name)).Count();
                //计算总页数
                page.PageCount = count / pageSize + (count % pageSize == 0 ? 0 : 1);
                return page;
            }
            #endregion
    
            #region 添加
            public int PostShen(ShenModel mf)
            {
                dh.ShenModel.Add(mf);
                return dh.SaveChanges();
            }
            #endregion
    
            #region 删除
            [HttpDelete]
            public int DeleteShen(int id)
            {
                var str = dh.ShenModel.Find(id);
                dh.ShenModel.Remove(str);
                return dh.SaveChanges();
            }
            #endregion
    
            #region 修改状态
            [HttpPut]
            public int Upd(int id)
            {
                var str = dh.ShenModel.Find(id);
                str.SBit = 1;
                return dh.SaveChanges();
            }
            #endregion
    
            #region 反填
            [HttpGet]
            public ShenModel Find(int id)
            {
                return dh.ShenModel.Include("SectionInfo").FirstOrDefault();
            }
            #endregion
    
            #region 修改
            [HttpPut]
            public int Update(ShenModel mf)
            {
                dh.ShenModel.Attach(mf);
                dh.Entry(mf).State = System.Data.Entity.EntityState.Modified;
                return dh.SaveChanges();
            }
            #endregion
    
            //实例化文件帮助类
            APIFileHelp help = new APIFileHelp();
            #region 导出
            public void Export()
            {
                List<ShenModel> list = dh.ShenModel.Include("SectionInfo")
                    .Where(x => x.SBit == 2).ToList();
                Dictionary<string, string> dic = new Dictionary<string, string>();
                dic.Add("Id", "序号");
                dic.Add("Name", "申请人");
                dic.Add("SectionInfo.BName", "部门名称");
                dic.Add("Remark", "申请描述");
                dic.Add("STime", "申请时间");
                dic.Add("SName", "审核人");
                help.ExportExcel<ShenModel>("Shenqing.xls", list, dic);
            }
            #endregion
        }
    }
     public class ShenController : ApiController
        {
            //实例化ShDBHelper
            ShDBHelper dh = new ShDBHelper();
    
            #region 绑定下拉列表
            [HttpGet]
            public List<SectionInfo> Sections()
            {
                return dh.SectionInfo.ToList();
            }
            #endregion
        }
    <script>
        function dataLoad(index) {
            //获取查询数据
            var name = $("#name").val();
            $.ajax({
                url: 'http://localhost:44367/api/Section/Show',
                type: 'get',
                data: { name: name, PageIndex: index, pageSize: 2 },
                dataType: 'JSON',
                success: function (data) {
                    $("#tb").empty();
                    var list = data.list;
                    $(list).each(function () {
                        var ss =
                            " <tr>"
                            + "<td>" + this.Id + "</td>"
                            + "<td>" + this.Name + "</td>"
                            + "<td>" + this.Remark + "</td>"
                            + "<td>" + this.STime + "</td>"
                            + "<td>" + this.SName + "</td>"
                            + "<td>" + (this.SBit == 1 ? "通过" : "未审核") + "</td>"
                            + "<td>" + (this.SBit == 2 ? '<input id="Button1" type="button"  onclick="upd(' + this.Id + ')" value="通过" />&nbsp;<input id="Button1" onclick="del(' + this.Id + ')" type="button" value="删除" />' : "") + "</td>"
                            + "</tr>";
                        $("#tb").append(ss);
                    });
                    $("#page").empty();
                    for (var i = 1; i <= data.PageCount; i++) {
                        var s = '<input id="Button1" type="button" value="' + [i] + '" onclick="dataLoad(' + i + ')" />';
                        $("#page").append(s);
                    }
                }
            })
        }
        function del(id) {
            if (confirm('是否删除?')) {
                $.ajax({
                    url: 'http://localhost:44367/api/Section/DeleteShen/' + id,
                    type: 'delete',
                    data: {},
                    dataType: 'json',
                    success:
                        function (data) {
                            if (data > 0) {
                                alert("删除成功");
                                dataLoad();
                            } else {
                                alert("删除失败");
                                return;
                            }
                        }
                })
            }
        }
        function upd(id) {
            $.ajax({
                url: 'http://localhost:44367/api/Section/Upd/' + id,
                type: 'put',
                data: {},
                dataType: 'Json',
                success: function (data) {
                    if (data > 0) {
                        alert("修改成功");
                        dataLoad();
                    } else {
                        alert("修改失败");
                        return;
                    }
                }
            })
        }
        dataLoad(1);
    </script>
    <script>
        function loadBind() {
            $.ajax({
                url: 'http://localhost:44367/api/Shen/Sections',
                type: 'get',
                data: {},
                dataType: 'json',
                success:
                    function (data) {
                        $("#s1").empty();
                        $(data).each(function () {
                            $("#s1").append(
                                "<option value='" + this.Id + "'>" + this.BName + "</option>"
                            );
                        })
                    }
            })
        }
    
        function save() {
            var mf = {};
            mf.Name = $("#name").val();
            mf.Remark = $("#neirong").val();
            mf.STime = $("#time").val();
            mf.SName = $("#sname").val();
            mf.SBit = 2;
            mf.SectionInfoId = $("#s1").val();
            $.ajax({
                url: 'http://localhost:44367/api/Section/PostShen',
                type: 'post',
                data: mf,
                dataType: 'json',
                success:
                    function (data) {
                        if (data > 0) {
                            alert('添加成功');
                            location.href = '/Shen/Show';
                        } else {
                            alert('添加失败');
                            return;
                        }
                    }
            })
    
        }
        loadBind();
    </script>
  • 相关阅读:
    小程序动态添加input(一)
    vue样式穿透
    小程序判断用户是否授权位置信息
    【超详细】MySQL学习笔记汇总(四)之排序查询
    【超详细】MySQL学习笔记汇总(三)之进阶1、2测试
    【超详细】MySQL学习笔记汇总(二)之条件查询
    【超详细】MySQL学习笔记汇总(一)之基础查询
    【超详细】MakeDown(Typora)+PicGo+Gitee实现图床
    JavaDOC生成文档
    学习Hive遇到的问题
  • 原文地址:https://www.cnblogs.com/ntg2/p/13274404.html
Copyright © 2011-2022 走看看