public DataContextContext GetDataContext() { if (_contexts == null) { RootDataContext.DataContext.OnClosing += OnRootClosing; _contexts = new List <DataContextContext>(1); } foreach (var context in _contexts) { if (!context.InUse) { context.InUse = true; return(context); } } var ctx = new DataContextContext { DataContextInfo = RootDataContext.Clone(true), InUse = true }; _contexts.Add(ctx); return(ctx); }
public DataContextContext GetDataContext() { if (_contexts == null) _contexts = new List<DataContextContext>(1); foreach (var context in _contexts) { if (!context.InUse) { context.InUse = true; return context; } } var ctx = new DataContextContext { DataContextInfo = RootDataContext.Clone(true), InUse = true }; _contexts.Add(ctx); return ctx; }
public DataContextContext GetDataContext() { if (_contexts == null) { _contexts = new List <DataContextContext>(1); } foreach (var context in _contexts) { if (!context.InUse) { context.InUse = true; return(context); } } var ctx = new DataContextContext { DataContextInfo = RootDataContext, InUse = true }; _contexts.Add(ctx); return(ctx); }
public void ReleaseDataContext(DataContextContext context) { context.InUse = false; }