• EF-调用sql进行操作


    一丶执行

     class Program
        {
            static void Main(string[] args)
            {
                var db = new TestDBEntities();
                string sql = @"select * from UserInfor where id =@id";
                SqlParameter[] parameter = { 
                                           new SqlParameter("@id","0011"),
    
                                           };
                var userLit = db.Database.SqlQuery<UserInfor>(sql, parameter).ToList();
    
                foreach (var item in userLit)
                {
                    Console.WriteLine("userName:" + item.userName);
                }
            }
        }

     二丶增删改使用(

    ExecuteSqlCommand

    )

    三、批量删除和修改

    使用插件:EntityFramework.Extended.6.1.0.168

    引用命名空间:using EntityFramework.Extensions;

    db.Set<Sys_RoleAndAuthority>().Where(u => u.RoleId == new Guid(id)).Delete();  //删除
    db.Set<Sys_MenuAuthority>().Where(c=>c.Id==id).Update(p => new Sys_MenuAuthority { AuthorityName =AuthorityName, OrderValue = orderBy });  //修改

    四、EF 使用事务

            [HttpPost]
            public JsonResult Del(string id)
            {
                using (DbContextTransaction transaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        //删除角色
                        db.Set<RoleInfo>().Where(u => u.id == new Guid(id)).Delete();
                        //删除角色对应的菜单权限
                        db.Set<Sys_RoleAndAuthority>().Where(u => u.RoleId == new Guid(id)).Delete();
                        //删除角色对应的数据权限
                        db.Set<Sys_RoleAndDataAuthority>().Where(u => u.roleId == new Guid(id)).Delete();
    
                        transaction.Commit();
                        return Json(new { status = "success" });
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback(); // 事物回滚
                        WriteLog.WirteErrLog(ex); //记录错误日志
                        return Json(new { status = "error" });
                    }
                }
            }
    View Code
    作者:chenze
    出处:https://www.cnblogs.com/chenze-Index/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    如果文中有什么错误,欢迎指出。以免更多的人被误导。
  • 相关阅读:
    【华为云技术分享】区块链与数据库如何结合?
    【华为云技术分享】跟繁琐的命令行说拜拜!Gerapy分布式爬虫管理框架来袭!
    gin casbin xorm vue-admin权限认证。
    golang优秀库及介绍
    网上的element-ui-admin运行
    golang时区处理
    Let's Encrypt apache的配置
    wireshark分析自己向自己请求服务
    XORM的几个常用数据处理
    golang处理json
  • 原文地址:https://www.cnblogs.com/chenze-Index/p/9377166.html
Copyright © 2020-2023  润新知