예제 #1
0
        public bool Atualizar(Usuario usuario)
        {
            bool retorno = false;

            try
            {
                _db.Usuarios.Where(w => w.Id == usuario.Id)
                .ToList()
                .ForEach(u =>
                {
                    u.Nome          = usuario.Nome;
                    u.Email         = usuario.Email;
                    u.DataAlteracao = usuario.DataAlteracao;
                    u.AlteradoPor   = usuario.AlteradoPor;
                    retorno         = true;
                });
                _db.SaveChanges();
            }
            catch (Exception ex)
            {
                var dados = JsonConvert.SerializeObject(usuario);
                retorno = false;
                Logger.Debug(dados, ex);
                _db.Dispose();
                _db = new ContextBase();
            }
            return(retorno);
        }
예제 #2
0
        public void Dispose()
        {
            if (Transaction != null)
            {
                Transaction.Dispose();
            }
            if (Context != null)
            {
                Context.Database.Connection.Close();

                Context.Dispose();
                Context = null;
                //DbInterception.Remove(intercepter);
                //DbInterception.Remove(treeIntercepter);
            }
        }
예제 #3
0
        internal static IWebHost MigrateDbContext <TContext>(this IWebHost webHost, Action <TContext> seeder) where TContext : DbContext
        {
            Task.Run(delegate
            {
                using (var scope = webHost.Services.CreateScope())
                {
                    var context = new ContextBase();

                    try
                    {
                        context.Database.Migrate();
                        context.Dispose();
                    }
                    catch (Exception ex)
                    {
                        var logger = scope.ServiceProvider.GetRequiredService <ILogger <TContext> >();
                        logger.LogError(ex, "An error occurred while migrating the database.");
                    }
                }
            });

            return(webHost);
        }
예제 #4
0
 public void Dispose()
 {
     _context.Dispose();
 }
예제 #5
0
 public void Dispose()
 {
     Db.Dispose();
 }
예제 #6
0
 public void Dispose()
 {
     // (Db?) se existir faça o dispose senao nao faça
     Db?.Dispose();
 }
예제 #7
0
 public void Dispose()
 {
     _contextBase?.Dispose();
 }
 public void Dispose()
 {
     _dbContext.Dispose();
 }
예제 #9
0
        public ActionResultVM Export(QueryDataInputVM ivm, string title)
        {
            var vm = new ActionResultVM();

            //文件路径
            string path  = "/upload/temp/";
            var    vpath = (GlobalTo.WebRootPath + path).Replace("\\", "/");

            if (!Directory.Exists(vpath))
            {
                Directory.CreateDirectory(vpath);
            }

            //文件名
            string filename = title.Replace(" ", "").Trim() + "_" + DateTime.Now.ToString("yyyyMMdd_HHmmss") + ".xlsx";

            //导出的表数据
            var dtReport = new DataTable();

            try
            {
                var ovm = new QueryDataOutputVM();

                var db = new ContextBase();

                switch (ivm.tableName?.ToLower())
                {
                default:
                    vm.Set(ARTag.invalid);
                    break;

                //角色
                case "sysrole":
                {
                    ovm      = new SettingController().QuerySysRole(ivm);
                    dtReport = ExportAid.ModelsMapping(ivm, ovm);
                }
                break;

                //用户
                case "sysuser":
                {
                    ovm      = new SettingController().QuerySysUser(ivm);
                    dtReport = ExportAid.ModelsMapping(ivm, ovm);
                }
                break;

                //日志
                case "syslog":
                {
                    ovm      = new SettingController().QuerySysLog(ivm);
                    dtReport = ExportAid.ModelsMapping(ivm, ovm);
                }
                break;
                }

                db.Dispose();

                if (vm.msg != ARTag.invalid.ToString())
                {
                    //生成
                    if (Fast.NpoiTo.DataTableToExcel(dtReport, vpath + filename))
                    {
                        vm.data = path + filename;

                        //生成的Excel继续操作
                        ExportAid.ExcelDraw(vpath + filename, ivm);

                        vm.Set(ARTag.success);
                    }
                    else
                    {
                        vm.Set(ARTag.fail);
                    }
                }
            }
            catch (Exception ex)
            {
                vm.Set(ex);
            }

            return(vm);
        }
예제 #10
0
        public void Dispose()
        {
            ContextBase.Database.EnsureDeleted();

            ContextBase.Dispose();
        }
예제 #11
0
 public void Dispose()
 {
     Context.Dispose();
     GC.SuppressFinalize(this);
 }