public static SimpleDataLayer CreateCachedDataLayer(this XafApplication xafApplication, IDataStore argsDataStore) { var cacheRoot = new DataCacheRoot(argsDataStore); var cacheNode = new DataCacheNode(cacheRoot); return(new SimpleDataLayer(XpandModuleBase.Dictiorary, cacheNode)); }
public static SimpleDataLayer CreateCachedDataLayer(this XafApplication xafApplication, IDataStore argsDataStore) { var cacheRoot = new DataCacheRoot(argsDataStore); var cacheNode = new DataCacheNode(cacheRoot); return(new SimpleDataLayer(XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary, cacheNode)); }
protected void Application_Start(object sender, EventArgs e) { string connectionString = ConfigurationManager.ConnectionStrings["DXConnectionString"].ConnectionString; IDataStore provider = XpoDefault.GetConnectionProvider(connectionString, AutoCreateOption.None); DataCacheRoot root = new DataCacheRoot(provider); Application.Add("DataStore", root); }
static Service1() { string connectionString = MSSqlConnectionProvider.GetConnectionString("localhost", "ServiceDB"); IDataStore dataStore = XpoDefault.GetConnectionProvider(connectionString, AutoCreateOption.DatabaseAndSchema); DataCacheRoot dataCacheRoot = new DataCacheRoot(dataStore); dataCacheRoot.Configure(new DataCacheConfiguration(DataCacheConfigurationCaching.InList, "Customer")); MainDataStore = dataCacheRoot; }
public IDataStore CreateWorkingStore(out IDisposable[] disposableObjects) { if (root == null) { IDataStore baseDataStore = xpoDataStoreProvider.CreateWorkingStore(out rootDisposableObjects); root = new DataCacheRoot(baseDataStore); } disposableObjects = new IDisposable[0]; return(new DataCacheNode(root)); }
public IDataStore CreateWorkingStore(out IDisposable[] disposableObjects) { disposableObjects = null; if ((ConfigurationManager.AppSettings["DataCache"] + "").Contains("Client")) { var cacheNode = HttpContext.Current.Application["DataStore"] as DataCacheNode; if (cacheNode == null) { var cacheRoot = new DataCacheRoot(Proxy.DataStore); cacheNode = new DataCacheNode(cacheRoot); } return cacheNode; } return Proxy; }
public static void ResetDataCacheRoot() { root = null; if (rootDisposableObjects != null) { foreach (IDisposable disposableObject in rootDisposableObjects) { disposableObject.Dispose(); } rootDisposableObjects = null; } }
IDataStore IXafApplicationDataStore.GetDataStore(IDataStore dataStore) { if ((ConfigurationManager.AppSettings["DataCache"] + "").Contains("Client")) { if (_cacheNode == null) { var _cacheRoot = new DataCacheRoot(dataStore); _cacheNode = new DataCacheNode(_cacheRoot); } return(_cacheNode); } return(null); }
IDataStore IXafApplication.GetDataStore(IDataStore dataStore) { if ((ConfigurationManager.AppSettings["DataCache"] + "").Contains("Client")) { var cacheNode = HttpContext.Current.Application["DataStore"] as DataCacheNode; if (cacheNode == null) { var _cacheRoot = new DataCacheRoot(dataStore); cacheNode = new DataCacheNode(_cacheRoot); } return(cacheNode); } return(null); }
public IDataStore CreateWorkingStore(out IDisposable[] disposableObjects) { disposableObjects = null; if ((ConfigurationManager.AppSettings["DataCache"] + "").Contains("Client")) { var cacheNode = HttpContext.Current.Application["DataStore"] as DataCacheNode; if (cacheNode == null) { var cacheRoot = new DataCacheRoot(Proxy.DataStore); cacheNode = new DataCacheNode(cacheRoot); } return(cacheNode); } return(Proxy); }
IDataStore IXpoDataStoreProvider.CreateWorkingStore(out IDisposable[] disposableObjects) { if (base.CreateWorkingStore(out rootDisposableObjects) is ConnectionProviderSql connectionProvider) { connectionProvider.DefaultCommandTimeout = new TimeSpan(0, 5, 0).Milliseconds; } if (root == null) { root = new DataCacheRoot(base.CreateWorkingStore(out rootDisposableObjects)); } disposableObjects = new IDisposable[0]; return(new DataCacheNode(root)); }
static IDataStore CreateDataStore(string connectionString, bool enableCaching) { if (!enableCaching) { var connectionProvider = XpoDefault.GetConnectionProvider(connectionString, AutoCreateOption.DatabaseAndSchema); XpoDefault.Session = null; return connectionProvider; } var dataStore = HttpContext.Current.Application["datastore"] as IDataStore; if (dataStore == null) { var subjectForCache = XpoDefault.GetConnectionProvider(connectionString, AutoCreateOption.DatabaseAndSchema); var _cacheRoot = new DataCacheRoot(subjectForCache); dataStore = new DataCacheNode(_cacheRoot); HttpContext.Current.Application["datastore"] = dataStore; } XpoDefault.Session = null; return dataStore; }
protected override IDataLayer CreateDataLayer(IDataStore workingDataStore) { var cacheRoot = new DataCacheRoot(workingDataStore); var cacheNode = new DataCacheNode(cacheRoot); //下面这种方式是仅用 PmsOrder表、EdsProd表 //var cfg = new DataCacheConfiguration(DataCacheConfigurationCaching.InList, "PmsOrder","EdsProd"); //下面的方式是关闭除指定的。其他的,都启用。 var cfg = new DataCacheConfiguration(DataCacheConfigurationCaching.NotInList, "Online", "OnlineItem"); cacheRoot.Configure(cfg); //可以自己选用一种方式,然后开启上面这行 if (this.threadSafe) { return(new ThreadSafeDataLayer(this.XPDictionary, cacheNode, new Assembly[0])); } return(new SimpleDataLayer(this.XPDictionary, cacheNode)); }
static IDataStore CreateDataStore(string connectionString, bool enableCaching) { if (!enableCaching) { var connectionProvider = XpoDefault.GetConnectionProvider(connectionString, AutoCreateOption.DatabaseAndSchema); XpoDefault.Session = null; return(connectionProvider); } var dataStore = HttpContext.Current.Application["datastore"] as IDataStore; if (dataStore == null) { var subjectForCache = XpoDefault.GetConnectionProvider(connectionString, AutoCreateOption.DatabaseAndSchema); var _cacheRoot = new DataCacheRoot(subjectForCache); dataStore = new DataCacheNode(_cacheRoot); HttpContext.Current.Application["datastore"] = dataStore; } XpoDefault.Session = null; return(dataStore); }
DataCacheNode IXafApplication.GetDataCacheRoot(IDataStore dataStore) { if ((ConfigurationManager.AppSettings["DataCache"] + "").Contains("Client")) { if (_cacheNode == null) { var _cacheRoot = new DataCacheRoot(dataStore); _cacheNode = new DataCacheNode(_cacheRoot); } return _cacheNode; } return null; }
IDataStore IXafApplicationDataStore.GetDataStore(IDataStore dataStore) { if ((ConfigurationManager.AppSettings["DataCache"] + "").Contains("Client")) { var cacheNode = HttpContext.Current.Application["DataStore"] as DataCacheNode; if (cacheNode == null) { var _cacheRoot = new DataCacheRoot(dataStore); cacheNode = new DataCacheNode(_cacheRoot); } return cacheNode; } return null; }