protected DbContext GetDb(Func <DbContextOptionsBuilder, DbContextOptionsBuilder> dbContextApplier, bool forSummaries) { if (forSummaries) { return(new SummaryDb(dbContextApplier)); } if (this.contextLifetimeMode == ContextLifetimeMode.PerRequest && RequestContextManager.Instance.CurrentContext.Items != null && RequestContextManager.Instance.CurrentContext.Items.ContainsKey("_lynicon_request_context")) { return((CoreDb)RequestContextManager.Instance.CurrentContext.Items["_lynicon_request_context"]); } CoreDb db = new CoreDb(dbContextApplier); if (this.contextLifetimeMode == ContextLifetimeMode.PerRequest && RequestContextManager.Instance.CurrentContext.Items != null) { RequestContextManager.Instance.CurrentContext.Items.Add("_lynicon_request_context", db); } // TMP //if (QueryTimeoutSecs.HasValue) // db.Database.CommandTimeout = QueryTimeoutSecs.Value; //else if (Repository.Instance.QueryTimeoutSecs.HasValue) // db.Database.CommandTimeout = Repository.Instance.QueryTimeoutSecs; return(db); }
protected DbContext GetDb(bool forSummaries) { if (forSummaries) { return(new SummaryDb()); } if (this.contextLifetimeMode == ContextLifetimeMode.PerRequest && HttpContext.Current.Items != null && HttpContext.Current.Items.Contains("_lynicon_request_context")) { return((CoreDb)HttpContext.Current.Items["_lynicon_request_context"]); } CoreDb db; if (DataSourceSpecifier == null) { db = new CoreDb(); } else { db = new CoreDb(DataSourceSpecifier); } if (this.contextLifetimeMode == ContextLifetimeMode.PerRequest && HttpContext.Current.Items != null) { HttpContext.Current.Items.Add("_lynicon_request_context", db); } if (QueryTimeoutSecs.HasValue) { db.Database.CommandTimeout = QueryTimeoutSecs.Value; } else if (Repository.Instance.QueryTimeoutSecs.HasValue) { db.Database.CommandTimeout = Repository.Instance.QueryTimeoutSecs; } return(db); }
public ProductRepository(CoreDb context) { this._context = context; }
protected DbContext GetDb(bool forSummaries) { if (forSummaries) return new SummaryDb(); if (this.contextLifetimeMode == ContextLifetimeMode.PerRequest && HttpContext.Current.Items != null && HttpContext.Current.Items.Contains("_lynicon_request_context")) return (CoreDb)HttpContext.Current.Items["_lynicon_request_context"]; CoreDb db; if (DataSourceSpecifier == null) db = new CoreDb(); else db = new CoreDb(DataSourceSpecifier); if (this.contextLifetimeMode == ContextLifetimeMode.PerRequest && HttpContext.Current.Items != null) HttpContext.Current.Items.Add("_lynicon_request_context", db); if (QueryTimeoutSecs.HasValue) db.Database.CommandTimeout = QueryTimeoutSecs.Value; else if (Repository.Instance.QueryTimeoutSecs.HasValue) db.Database.CommandTimeout = Repository.Instance.QueryTimeoutSecs; return db; }