public void Dispose() { if (ifDispose) { context?.Dispose(); } }
public virtual void Dispose() { if (_dbContext != null) { _dbContext.Dispose(); } }
protected override void Dispose(bool disposing) { if (disposing) { db.Dispose(); } base.Dispose(disposing); }
protected virtual void Dispose(bool disposing) { if (!this.disposed) { if (disposing) { _context.Dispose(); } } this.disposed = true; }
public void Dispose() { if (DbContext != null) { DbContext.Dispose(); } if (CacheContext != null) { CacheContext.Dispose(); } }
public void InitializerDatabase() { var context = new DefaultDbContext(); IDatabaseInitializer <DefaultDbContext> initializer; if (!context.Database.Exists()) { initializer = new CreateDatabaseIfNotExists <DefaultDbContext>(); } else { initializer = new MigrateDatabaseToLatestVersion <DefaultDbContext, AutoMigrationsConfiguration <DefaultDbContext> >(); } Database.SetInitializer(initializer); ObjectContext objectContext = ((IObjectContextAdapter)context).ObjectContext; StorageMappingItemCollection mappingItemCollection = (StorageMappingItemCollection)objectContext.ObjectStateManager .MetadataWorkspace.GetItemCollection(DataSpace.CSSpace); mappingItemCollection.GenerateViews(new List <EdmSchemaError>()); context.Dispose(); }
/// <summary> /// 执行与释放或重置非托管资源相关的应用程序定义的任务。 /// </summary> public void Dispose() { try { if (!_cancelled) { Logger.Debug("标记事务为完成"); if (_dbContext != null) { _dbContext.SaveChanges(); } if (_transaction != null) { _transaction.Commit(); } } else { if (_transaction == null) { return; } Logger.Debug("回滚事务"); _transaction.Rollback(); } } catch (DbEntityValidationException dbEntityValidationException) { var builder = new StringBuilder(); builder.AppendLine("处置事务时发生了错误"); foreach (var dbEntityValidationResult in dbEntityValidationException.EntityValidationErrors) { foreach (var dbValidationError in dbEntityValidationResult.ValidationErrors) { var property = dbValidationError.PropertyName; var currentValues = dbEntityValidationResult.Entry.CurrentValues; var propertyValue = currentValues.PropertyNames.Contains(property) ? currentValues[property] : null; builder.AppendLine(string.Format("属性:{0},值:{1},错误信息:{2}。", property, propertyValue == null ? "null" : propertyValue.ToString(), dbValidationError.ErrorMessage)); } } Logger.Error(dbEntityValidationException, builder.ToString()); #if DEBUG throw; #endif } catch (Exception e) { Logger.Error(e, "处置事务时发生了错误"); #if DEBUG throw; #endif } finally { if (_transaction != null) { _transaction.Dispose(); Logger.Debug("事务被释放"); _transaction = null; } _cancelled = false; if (_dbContext != null) { _dbContext.Dispose(); _dbContext = null; } } }
/// <summary> /// 关闭连接 /// </summary> public virtual void Close() { DbContext.Database.CloseConnection(); DbContext.Dispose(); }