博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Entity Framework公共的增删改方法
阅读量:6804 次
发布时间:2019-06-26

本文共 3254 字,大约阅读时间需要 10 分钟。

using System;using System.Collections.Generic;using System.Data.Entity;using System.Data.Entity.Infrastructure;namespace My{    ///  Entity Framework公共的增删改方法。返回的是受影响的行数     public class PublicStore    {       //新增       public static int InsertObject(object obj)        {            Type t = obj.GetType();            int effect = -1;            using (MyContext con = new MyContext())            {                DbSet set = con.Set(t);                set.Add(obj);                effect = con.SaveChanges();                return effect;            }        }                //批量新增        public static int InsertObjects(IEnumerable objs)        {            int effect = 0;            var et = objs.GetEnumerator();            if (et.MoveNext())            {                Type t = et.Current.GetType();                using (MyContext con = new MyContext())                {                    DbSet set = con.Set(t);                    foreach (var o in objs)                    {                        set.Add(o);                    }                    effect = con.SaveChanges();                }            }            return effect;        }                //修改        public static int ModifyObject(object obj)        {            int effect = -1;            using (MyContext con = new MyContext())            {                DbEntityEntry entry = con.Entry(obj);                entry.State = System.Data.EntityState.Modified;                effect = con.SaveChanges();                return effect;            }        }        //批量修改        public static int ModifyObjects(IEnumerable objs)        {            int effect = 0;            var et = objs.GetEnumerator();            if (et.MoveNext())            {                Type t = et.Current.GetType();                using (MyContext con = new MyContext())                {                    foreach (var o in objs)                    {                        DbEntityEntry entry = con.Entry(o);                        entry.State = System.Data.EntityState.Modified;                    }                    effect = con.SaveChanges();                }            }            return effect;        }                //删除        public static int DeleteObject(object obj)        {            int effect = -1;            using (MyContext con = new MyContext())            {                DbEntityEntry entry = con.Entry(obj);                entry.State = System.Data.EntityState.Deleted;                effect = con.SaveChanges();                return effect;            }        }                //批量删除        public static int DeleteObjects(IEnumerable objs)        {            int effect = 0;            var et = objs.GetEnumerator();            if (et.MoveNext())            {                Type t = et.Current.GetType();                using (MyContext con = new MyContext())                {                    foreach (var o in objs)                    {                        DbEntityEntry entry = con.Entry(o);                        entry.State = System.Data.EntityState.Deleted;                    }                    effect = con.SaveChanges();                }            }            return effect;        }    }}

 

转载于:https://www.cnblogs.com/gossip/p/3831770.html

你可能感兴趣的文章
Mybatis中配置Mapper的方法
查看>>
Java基础学习总结(19)——Java环境变量配置
查看>>
Mvc5+Entity Framework6 之二----在MVC中用Entity Framework实现基本的CRUD
查看>>
我的友情链接
查看>>
大型网站技术架构(四)网站的高性能架构
查看>>
linux系统修改SSH最大连接数,修改nofile,nproc参数方法
查看>>
Hadoop-2.5.2集群安装配置详解
查看>>
解决报表网页版转成excel时,首位0被清除的问题
查看>>
Mysql学习总结(3)——MySql语句大全:创建、授权、查询、修改等
查看>>
MyBatis学习总结(8)——Mybatis3.x与Spring4.x整合
查看>>
Mysql学习总结(8)——MySql基本查询、连接查询、子查询、正则表达查询讲解...
查看>>
IIS 7.0 和 IIS 7.5 中的 HTTP 状态代码
查看>>
Dubbo学习总结(1)——Dubbo入门基础与实例讲解
查看>>
rsync搭建及管理
查看>>
STL:std::shared_ptr大致原理.
查看>>
高并发学习笔记(八)
查看>>
第四章 项目管理一般知识
查看>>
Python 调用cobbler API 学习笔记
查看>>
php安装常见错误解决
查看>>
eNsp下载地址(官网)
查看>>