public static void Connect(DevExpress.Xpo.DB.AutoCreateOption autoCreateOption, bool threadSafe = false) { if (threadSafe) { var provider = XpoDefault.GetConnectionProvider(ConnectionString, autoCreateOption); var dictionary = new DevExpress.Xpo.Metadata.ReflectionDictionary(); dictionary.GetDataStoreSchema(persistentTypes); dictionary.CollectClassInfos(nonPersistentTypes); XpoDefault.DataLayer = new ThreadSafeDataLayer(dictionary, provider); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer(ConnectionString, autoCreateOption); } XpoDefault.Session = null; }
public static void Connect(IConfiguration configuration, DevExpress.Xpo.DB.AutoCreateOption autoCreateOption, bool threadSafe = false) { if (threadSafe) { var provider = GetConnectionProvider(configuration, autoCreateOption); var dictionary = new DevExpress.Xpo.Metadata.ReflectionDictionary(); dictionary.GetDataStoreSchema(persistentTypes); dictionary.CollectClassInfos(nonPersistentTypes); XpoDefault.DataLayer = new ThreadSafeDataLayer(dictionary, provider); } else { var provider = new OrmCookbookProvider(new SqlConnection(configuration.GetConnectionString(ConnectionStringName)), autoCreateOption); XpoDefault.DataLayer = new SimpleDataLayer(provider); } }