static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); XpoDefault.ConnectionString = SQLiteConnectionProvider.GetConnectionString(@"nwind.sqlite"); Application.Run(new Form1()); }
static void Main() { ConnectionProviderSql provider = (ConnectionProviderSql)XpoDefault.GetConnectionProvider(SQLiteConnectionProvider.GetConnectionString(@"CustomCommand.sqlite"), AutoCreateOption.DatabaseAndSchema); provider.RegisterCustomFunctionOperator(new GetMonthFunction()); XPDictionary dict = new ReflectionDictionary(); dict.CustomFunctionOperators.Add(new GetMonthFunction()); XpoDefault.DataLayer = new SimpleDataLayer(dict, provider); CreateData(); using (Session session = new Session()) { XPView view = new XPView(session, typeof(Order)); view.AddProperty("Month", "custom('GetMonth', OrderDate)"); foreach (ViewRecord prop in view) { Console.WriteLine(prop["Month"]); } var list = from o in new XPQuery <Order>(session) where o.OrderName == "Chai" select new { Month = GetMonthFunction.GetMonth(o.OrderDate) }; foreach (var item in list) { Console.WriteLine(item.Month); } } Console.WriteLine("done\npress any key to exit .."); Console.ReadKey(); }
public App() { InitializeComponent(); AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; try { var documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); var filePath = Path.Combine(documentsPath, "XpoXamarin.db"); string connectionString = SQLiteConnectionProvider.GetConnectionString(filePath) + ";Cache=Shared;"; XpoHelper.InitXpo(connectionString); var UoW = XpoHelper.CreateUnitOfWork(); var count = UoW.Query <Item>().Count(); MainPage = new MainPage(filePath, count); } catch (Exception exception) { Debug.WriteLine(exception.Message); throw exception; } }
public DictionaryManager(string databaseName) { DirectoryInfo directory = Directory.CreateDirectory(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Data", "Dictionary")); string connectionString = SQLiteConnectionProvider.GetConnectionString(Path.Combine(directory.FullName, databaseName)); XpoDefault.DataLayer = XpoDefault.GetDataLayer(connectionString, AutoCreateOption.DatabaseAndSchema); XpoDefault.Session = null; UnitOfWork = new UnitOfWork(); }
//Scenario Result Expected public void CreateDataWithEncryptedConnectionReadDataWithNormalConnection_FileCantBeReaded_Fail() { SQLitePCL.Batteries_V2.Init(); EncriptedSQLiteConnectionProvider.Register(); if (File.Exists("CreateDataWithEncryptedConnectionReadDataWithNormalConnection.db")) { File.Delete("CreateDataWithEncryptedConnectionReadDataWithNormalConnection.db"); } System.IDisposable[] _discard; var CipherDataStore = EncriptedSQLiteConnectionProvider.CreateProviderFromString(@"XpoProvider=EncriptedSQLiteConnectionProvider;Data Source=CreateDataWithEncryptedConnectionReadDataWithNormalConnection.db", DevExpress.Xpo.DB.AutoCreateOption.DatabaseAndSchema, "abc123", out _discard); IDataLayer dl = new SimpleDataLayer(CipherDataStore); using (Session session = new Session(dl)) { System.Reflection.Assembly[] assemblies = new System.Reflection.Assembly[] { typeof(Customer).Assembly, }; session.UpdateSchema(assemblies); session.CreateObjectTypeRecords(assemblies); } UnitOfWork UoW = new UnitOfWork(dl); Customer Customer = new Customer(UoW); Customer.Name = "Jose Manuel Ojeda Melgar"; Customer.Address = "Saint Petersburg Russia"; Customer.Inactive = false; Customer.CreatedOn = new System.DateTime(2020, 5, 16); UoW.CommitChanges(); var NormalDataStore = SQLiteConnectionProvider.CreateProviderFromString(@"Data Source=CreateDataWithEncryptedConnectionReadDataWithNormalConnection.db", DevExpress.Xpo.DB.AutoCreateOption.DatabaseAndSchema, out _discard); UnitOfWork unitOfWork = new UnitOfWork(new SimpleDataLayer(NormalDataStore)); var Criteria = new DevExpress.Data.Filtering.BinaryOperator("Name", "Jose Manuel Ojeda Melgar"); Assert.Throws <DevExpress.Xpo.DB.Exceptions.SqlExecutionErrorException>(() => { var CustomerFromDatabase = unitOfWork.FindObject <Customer>(Criteria); Assert.AreEqual(CustomerFromDatabase.Name, Customer.Name); Assert.AreEqual(CustomerFromDatabase.Address, Customer.Address); Assert.AreEqual(CustomerFromDatabase.Inactive, Customer.Inactive); }); }
static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); string connectionString = SQLiteConnectionProvider.GetConnectionString(@"nwind.sqlite"); using (IDbConnection connection = new SQLiteConnection(connectionString)) { InitializeDataLayer(connection); Application.Run(new Form1()); } }
public override void Drop() { var databaseLocation = SQLiteConnectionProvider.GetFullDBPath(Settings); log.LogDebug($"Удаление базы данных ({databaseLocation})"); if (!File.Exists(databaseLocation)) { return; } File.Delete(databaseLocation); }
public App() { InitializeComponent(); AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; var documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); //MSSqlServer //string connectionString = MSSqlConnectionProvider.GetConnectionString("YOUR_SERVER_NAME", "sa", "", "XamarinDemo"); //SQLite var filePath = Path.Combine(documentsPath, "xpoXamarinDemo.db"); string connectionString = SQLiteConnectionProvider.GetConnectionString(filePath) + ";Cache=Shared;"; //In-memory data store with saving/loading from the xml file //var filePath = Path.Combine(documentsPath, "xpoXamarinDemo.xml"); //string connectionString = InMemoryDataStore.GetConnectionString(filePath); XpoHelper.InitXpo(connectionString); var uoW = XpoHelper.CreateUnitOfWork(); XPQuery <Item> xPQuery = uoW.Query <Item>(); //Similar to XPCollection XPCollection <Item> ItemsXpCollection = new XPCollection <Item>();//HACK For XPCollection use criteria in constructor or filter //ItemsXpCollection.Filter = new BinaryOperator("", ""); //var queryResult= xPQuery.Where(e => e.Description == "algo"); //Better //var Reuslt = ItemsXpCollection.Where(e => e.Description == "algo"); //Ineficiente load whole collection if (!xPQuery.Any()) { for (int i = 0; i < 1000; i++) { Item Object = new Item(uoW); Object.Description = "Item number:" + i.ToString(); Object.Index = i; } if (uoW.InTransaction) { uoW.CommitChanges(); } } MainPage = new MainPage(); }
private static void StartConnectionConfigDb() { // Retrieve the Data Store specific connection string. string connectionString = MSSqlConnectionProvider.GetConnectionString(@"DBSRV\QWERTY", @"user02", @"8a0IucJ@Nx1Qy5HfFrX0Ob3m", @"Sales"); string connectionString1 = SQLiteConnectionProvider.GetConnectionString(@"D:\TEMP\SQLite\SQLITEDB1.db3"); // IDataLayer dataLayer = XpoDefault.GetDataLayer(connectionString1, AutoCreateOption.DatabaseAndSchema); XpoDefault.DataLayer = dataLayer; //Session session = new Session(); }
internal static async Task <int> Main(string[] args) { InMemoryDataStore.Register(); var connectionString = InMemoryDataStore.GetConnectionStringInMemory(true); XpoDefault.DataLayer = XpoDefault.GetDataLayer(connectionString, AutoCreateOption.DatabaseAndSchema); SQLiteConnectionProvider.Register(); var directory = Path.GetDirectoryName(typeof(Program).Assembly.Location); var databases = new[]
public static void Main(string[] args) { //HACK https://documentation.devexpress.com/XPO/119377/Getting-Started/Getting-Started-with-NET-Core //string appDataPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); //string connectionString = SQLiteConnectionProvider.GetConnectionString(Path.Combine(appDataPath, "myXpoApp.db")); string connectionString = SQLiteConnectionProvider.GetConnectionString("myXpoApp.db"); XpoDefault.DataLayer = XpoDefault.GetDataLayer(connectionString, AutoCreateOption.DatabaseAndSchema); UnitOfWork UoW = new UnitOfWork(); if (!UoW.Query <Product>().Any()) { Category BestFoodInTheWorld = new Category(UoW) { Code = "001", Name = "Best food in the world" }; Category HealtyFood = new Category(UoW) { Code = "002", Name = "Healty Food" }; Product Hamburger = new Product(UoW); Hamburger.Name = "Rocco's hamburger"; Hamburger.Description = "is a cheeseburger with cheese inside the meat instead of on top, resulting in a melted core of cheese."; Hamburger.Code = "001"; Hamburger.Category = BestFoodInTheWorld; Product Pizza = new Product(UoW); Pizza.Name = "Pizza"; Pizza.Description = "Pizza Margherita is a typical Neapolitan pizza, made with San Marzano tomatoes, mozzarella fior di latte, fresh basil, salt and extra-virgin olive oil"; Pizza.Code = "002"; Pizza.Category = BestFoodInTheWorld; Product Tacos = new Product(UoW); Tacos.Name = "Tacos"; Tacos.Description = "Carne Asada Tacos. Carne asada tacos are delicious, flank steak tacos with a few simple ingredients and tons of flavor"; Tacos.Code = "003"; Tacos.Category = BestFoodInTheWorld; Product Salad = new Product(UoW) { Name = "Salad", Description = "Just a salad", Code = "004", Category = HealtyFood }; } UoW.CommitChanges(); CreateWebHostBuilder(args).Build().Run(); }
protected override async void OnInitialized() { InitializeComponent(); Connectivity.ConnectivityChanged += Connectivity_ConnectivityChanged; DataStore = new SyncDataStore(Identity, false, "http://192.168.1.64/BIT.Xpo.Sync.ServerNew/api/Sync"); try { var MainPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); var CacheShared = ";Cache=Shared;"; var MainDb = Path.Combine(MainPath, "MainDb.db"); Debug.WriteLine(string.Format("{0}:{1}", "MainDb", MainDb)); var Log = Path.Combine(MainPath, "Log.db"); Debug.WriteLine(string.Format("{0}:{1}", "Log", Log)); DataStore.Initialize( SQLiteConnectionProvider.GetConnectionString(MainDb) + CacheShared, SQLiteConnectionProvider.GetConnectionString(Log) + CacheShared, true, AutoCreateOption.DatabaseAndSchema, new Assembly[] { typeof(Demo.ORM.CustomBaseObject).Assembly }); XpoDefault.DataLayer = new SimpleDataLayer(DataStore); SyncDataStore.EnableTransactionHistory = true; DataStore.PullModification(); UnitOfWork UoW = new UnitOfWork(); CreateInitialData(UoW); } catch (Exception exception) { Debug.WriteLine(string.Format("{0}:{1}", "exception.Message", exception.Message)); if (exception.InnerException != null) { Debug.WriteLine(string.Format("{0}:{1}", "exception.InnerException.Message", exception.InnerException.Message)); } Debug.WriteLine(string.Format("{0}:{1}", " exception.StackTrace", exception.StackTrace)); } await NavigationService.NavigateAsync("NavigationPage/MainPage"); }
protected override void OnCreate(Bundle bundle) { base.SetTheme(Resource.Style.MainTheme); base.OnCreate(bundle); CrossCurrentActivity.Current.Init(this, bundle); TabLayoutResource = Resource.Layout.Tabbar; ToolbarResource = Resource.Layout.Toolbar; Instance = this; sqliteConnectionProvider = new SQLiteConnectionProvider(); Xamarin.Essentials.Platform.Init(this, bundle); global::Xamarin.Forms.Forms.Init(this, bundle); LoadApplication(new App(new AndroidInitializer())); }
internal static async Task <int> Main(string[] args) { InMemoryDataStore.Register(); var connectionString = InMemoryDataStore.GetConnectionStringInMemory(true); XpoDefault.DataLayer = XpoDefault.GetDataLayer(connectionString, AutoCreateOption.DatabaseAndSchema); ApiResourceMappersTests.Tests(); PersistedGrantMappersTests.Tests(); ScopesMappersTests.Tests(); IdentityResourceMappersTests.Tests(); ClientMappersTests.Tests(); SQLiteConnectionProvider.Register(); var directory = Path.GetDirectoryName(typeof(Program).Assembly.Location); var databases = new[]
public static void XPOStart() { try { string conString = SQLiteConnectionProvider.GetConnectionString(string.Format("{0}\\projects.ldb", System.Windows.Forms.Application.StartupPath)); DevExpress.Xpo.Metadata.XPDictionary dictionary = new DevExpress.Xpo.Metadata.ReflectionDictionary(); XpoDefault.DataLayer = XpoDefault.GetDataLayer(conString, AutoCreateOption.DatabaseAndSchema); DevExpress.Xpo.XpoDefault.Session = new DevExpress.Xpo.Session(XpoDefault.DataLayer); //DevExpress.Xpo.Helpers.SessionStateStack.SuppressCrossThreadFailuresDetection = true; //DevExpress.Xpo.Session.DefaultSession.UpdateSchema(); //IDataStore store = XpoDefault.GetConnectionProvider(conn, AutoCreateOption.SchemaAlreadyExists); //var layer = new ThreadSafeDataLayer(dictionary, store); } catch (Exception ex) { Utility.Hata(ex); } }
static void Main() { #if EASYTEST DevExpress.ExpressApp.Win.EasyTest.EasyTestRemotingRegistration.Register(); #endif Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); EditModelPermission.AlwaysGranted = System.Diagnostics.Debugger.IsAttached; Tracing.LocalUserAppDataPath = Application.LocalUserAppDataPath; Tracing.Initialize(); TypicalDXeXpressAppProject_DoSoWindowsFormsApplication winApplication = new TypicalDXeXpressAppProject_DoSoWindowsFormsApplication(); string connectionString = SQLiteConnectionProvider.GetConnectionString("DoSo_SampleXAFApp6.db", "random_password"); XpoDefault.DataLayer = XpoDefault.GetDataLayer(connectionString, AutoCreateOption.DatabaseAndSchema); winApplication.SplashScreen = new DevExpress.ExpressApp.Win.Utils.DXSplashScreen("DoSo_Logo.png"); //if (ConfigurationManager.ConnectionStrings["ConnectionString"] != null) //{ // winApplication.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; //} winApplication.ConnectionString = connectionString; #if EASYTEST if (ConfigurationManager.ConnectionStrings["EasyTestConnectionString"] != null) { winApplication.ConnectionString = ConfigurationManager.ConnectionStrings["EasyTestConnectionString"].ConnectionString; } #endif if (System.Diagnostics.Debugger.IsAttached && winApplication.CheckCompatibilityType == CheckCompatibilityType.DatabaseSchema) { winApplication.DatabaseUpdateMode = DatabaseUpdateMode.UpdateDatabaseAlways; } try { winApplication.Setup(); winApplication.Start(); } catch (Exception e) { winApplication.HandleException(e); } }
public override void CreateEmptyDB() { var databaseLocation = SQLiteConnectionProvider.GetFullDBPath(Settings); log.LogDebug($"Создание пустой базы данных ({databaseLocation})"); var directoryPath = Path.GetDirectoryName(databaseLocation); if (!string.IsNullOrWhiteSpace(directoryPath)) { Directory.CreateDirectory(directoryPath); } SQLiteConnection.CreateFile(databaseLocation); var createCommandText = GetResourceAsString(GetType(), GetAppropriateCreateScript(Settings)); using (var sqliteConnection = SQLiteConnectionProvider.GetConnectionFromSettings(Settings)) { sqliteConnection.Execute(createCommandText); } }
public static Session GetSessionThreadSafeDataLayer(string connectionString = null) { if (string.IsNullOrWhiteSpace(connectionString)) { var fullPathDataBase = Path.GetFullPath(StringSQLiteConnection); connectionString = SQLiteConnectionProvider.GetConnectionString(fullPathDataBase); } var xpoTypeInfoSource = XpoTypesInfoHelper.GetXpoTypeInfoSource().XPDictionary; var connectionProvider = XpoDefault.GetConnectionProvider(connectionString, AutoCreateOption.DatabaseAndSchema); var dl = new ThreadSafeDataLayer(xpoTypeInfoSource, connectionProvider); var session = new Session(dl, null) { LockingOption = LockingOption.None, TrackPropertiesModifications = true }; return(session); }
protected override void OnSetupStarted() { base.OnSetupStarted(); #if DEBUG var dirName = Path.GetDirectoryName(GetType().Assembly.Location); var dbName = $"{nameof(FeatureCenterBlazorApplication)}.db"; var dbPath = string.IsNullOrEmpty(dirName) ? dbName : Path.Combine(dirName, dbName); ConnectionString = SQLiteConnectionProvider.GetConnectionString(dbPath); #else var configuration = ServiceProvider.GetRequiredService <IConfiguration>(); if (configuration.GetConnectionString("DefaultConnection") != null) { ConnectionString = configuration.GetConnectionString("DefaultConnection"); } #endif }
private static void NewMethod() { // Retrieve the Data Store specific connection string. string connectionString = MSSqlConnectionProvider.GetConnectionString(@"DBSRV\QWERTY", @"user02", @"8a0IucJ@Nx1Qy5HfFrX0Ob3m", @"Sales"); string connectionString1 = SQLiteConnectionProvider.GetConnectionString(@"D:\TEMP\SQLite\SQLITEDB1.db3"); // IDataLayer dataLayer = XpoDefault.GetDataLayer(connectionString1, AutoCreateOption.DatabaseAndSchema); XpoDefault.DataLayer = dataLayer; Session session = new Session(); // XPCollection collection = new XPCollection(typeof(DataStoreModel)); // DataStoreModel ds = new DataStoreModel(); ds.Name = "alex"; ds.SyntaxProvider = "Oracle 12"; ds.ConnectionString = "#$%^"; ds.Save(); }
protected override void OnCreate(Bundle bundle) { base.SetTheme(Resource.Style.MainTheme); base.OnCreate(bundle); CrossCurrentActivity.Current.Init(this, bundle); TabLayoutResource = Resource.Layout.Tabbar; ToolbarResource = Resource.Layout.Toolbar; Instance = this; sqliteConnectionProvider = new SQLiteConnectionProvider(); Xamarin.Essentials.Platform.Init(this, bundle); global::Rg.Plugins.Popup.Popup.Init(this, bundle); global::Xamarin.Forms.Forms.Init(this, bundle); FFImageLoading.Forms.Platform.CachedImageRenderer.Init(enableFastRenderer: true); global::FFImageLoading.ImageService.Instance.Initialize(new FFImageLoading.Config.Configuration() { Logger = new Covid19Radar.Services.DebugLogger() }); LoadApplication(new App(new AndroidInitializer())); }
public App() { InitializeComponent(); AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; var documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); // Connect to SQLite var filePath = Path.Combine(documentsPath, "xpoXamarinDemo.db"); string connectionString = SQLiteConnectionProvider.GetConnectionString(filePath) + ";Cache=Shared;"; XpoHelper.InitXpo(connectionString); if (Device.RuntimePlatform == Device.iOS) { MainPage = new MainPage(); } else { MainPage = new NavigationPage(new MainPage()); } }
/// <summary> /// Подключение к БД. /// </summary> private void Connect() { switch (DataBaseType) { case SQLType.Access: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( AccessConnectionProvider.GetConnectionString(DataBase, User, Password), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( AccessConnectionProvider.GetConnectionString(DataBase), AutoCreateOption); } break; case SQLType.Access2007: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( AccessConnectionProvider.GetConnectionStringACE(DataBase, Password), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( AccessConnectionProvider.GetConnectionStringACE(DataBase, ""), AutoCreateOption); } break; case SQLType.MSSql: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( MSSqlConnectionProvider.GetConnectionString(Server, User, Password, DataBase), AutoCreateOption); //string connctionString = string.Format(@"Data Source={0};Initial Catalog=test;Persist Security Info=True;User ID=sa;Password=qwe+ASDFG", Server); //XpoDefault.DataLayer = XpoDefault.GetDataLayer(connctionString, AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( MSSqlConnectionProvider.GetConnectionString(Server, DataBase), AutoCreateOption); } break; case SQLType.MSSqlCE: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( MSSqlCEConnectionProvider.GetConnectionString(DataBase, Password), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( MSSqlCEConnectionProvider.GetConnectionString(DataBase), AutoCreateOption); } break; case SQLType.MySQL: XpoDefault.DataLayer = XpoDefault.GetDataLayer( MySqlConnectionProvider.GetConnectionString(Server, "", "", DataBase), AutoCreateOption); break; case SQLType.Oracle: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( OracleConnectionProvider.GetConnectionString(Server, User, Password), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( OracleConnectionProvider.GetConnectionString(Server, "", ""), AutoCreateOption); } break; case SQLType.Firebird: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( FirebirdConnectionProvider.GetConnectionString(Server, User, Password, DataBase), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( FirebirdConnectionProvider.GetConnectionString(Server, "", "", DataBase), AutoCreateOption); } break; case SQLType.PostgreSql: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( PostgreSqlConnectionProvider.GetConnectionString(Server, User, Password, DataBase), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( PostgreSqlConnectionProvider.GetConnectionString(Server, "", "", DataBase), AutoCreateOption); } break; case SQLType.SQLite: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( SQLiteConnectionProvider.GetConnectionString(DataBase, Password), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( SQLiteConnectionProvider.GetConnectionString(DataBase), AutoCreateOption); } break; case SQLType.VistaDB: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( VistaDBConnectionProvider.GetConnectionString(DataBase, Password), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( VistaDBConnectionProvider.GetConnectionString(DataBase), AutoCreateOption); } break; case SQLType.PervasiveSql: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( PervasiveSqlConnectionProvider.GetConnectionString(Server, User, Password, DataBase), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( PervasiveSqlConnectionProvider.GetConnectionString(Server, "", "", DataBase), AutoCreateOption); } break; case SQLType.DB2: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( DB2ConnectionProvider.GetConnectionString(Server, DataBase, User, Password), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( DB2ConnectionProvider.GetConnectionString(Server, DataBase, "", ""), AutoCreateOption); } break; case SQLType.NexusDB: if (PasswordNeed) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( NexusDBConnectionProvider.GetConnectionString(Server, User, Password, DataBase), AutoCreateOption); } else { XpoDefault.DataLayer = XpoDefault.GetDataLayer( NexusDBConnectionProvider.GetConnectionString(Server, "", "", DataBase), AutoCreateOption); } break; default: XpoDefault.DataLayer = XpoDefault.GetDataLayer( AccessConnectionProvider.GetConnectionString(DataBase), AutoCreateOption.DatabaseAndSchema); break; } }
static void Main(string[] args) { Console.WriteLine("XPO Console Demo"); XpoDefault.DataLayer = XpoDefault.GetDataLayer( SQLiteConnectionProvider.GetConnectionString("console.db"), AutoCreateOption.DatabaseAndSchema); using (var uow = new UnitOfWork()) { uow.ClearDatabase(); } using (var uow = new UnitOfWork()) { var order1 = new Order(uow) { OrderNo = 1, OrderDate = DateTime.Now.AddDays(-5), Client = "Customer A" }; order1.OrderItems.Add(new OrderItem(uow) { Qty = 1, Description = "Product A", UnitPrice = 10 }); order1.OrderItems.Add(new OrderItem(uow) { Qty = 2, Description = "Product B", UnitPrice = 15 }); new OrderItem(uow) { Qty = 2, Description = "Product C", UnitPrice = 20, Order = order1 }; var order2 = new Order(uow) { OrderNo = 2, OrderDate = DateTime.Now.AddDays(-40), Client = "Customer B" }; order2.OrderItems.Add(new OrderItem(uow) { Qty = 1, Description = "Product A", UnitPrice = 10 }); order2.OrderItems.Add(new OrderItem(uow) { Qty = 2, Description = "Product D", UnitPrice = 15 }); uow.CommitChanges(); } using (var uow = new UnitOfWork()) { var orders = from o in uow.Query <Order>() where o.OrderDate < DateTime.Now.AddDays(-10) orderby o.OrderDate select o; foreach (var o in orders) { Console.WriteLine($"Order #{o.OrderNo} / {o.OrderDate}, client {o.Client}, Total Amount { o.TotalAmount }"); foreach (var i in o.OrderItems) { Console.WriteLine($" {i.Qty} x {i.Description} ({i.UnitPrice}) = {i.Price}"); } } } }
public User(string username, string password, ConnectionProfile profile) { this.Username = username; this.Password = password; this.ConnectionProfile = profile; if (profile.ConnectionType == ConnectionType.SQLServer) { ConnectionProvider = new SQLServerConnectionProvider(); } else if (profile.ConnectionType == ConnectionType.Standalone) { ConnectionProvider = new SQLiteConnectionProvider(profile, username, password); } }
public static int Main(string[] args) { Log.Logger = new LoggerConfiguration() .MinimumLevel.Debug() .MinimumLevel.Override("Microsoft", LogEventLevel.Warning) .MinimumLevel.Override("Microsoft.Hosting.Lifetime", LogEventLevel.Information) .MinimumLevel.Override("System", LogEventLevel.Warning) .MinimumLevel.Override("Microsoft.AspNetCore.Authentication", LogEventLevel.Information) .Enrich.FromLogContext() .WriteTo.File( @"C:\logs\licensing.xenial.io\admin.licensing.xenial.io.log", fileSizeLimitBytes: 1_000_000, rollOnFileSizeLimit: true, shared: true, flushToDiskInterval: TimeSpan.FromSeconds(1)) .WriteTo.Console(outputTemplate: "[{Timestamp:HH:mm:ss} {Level}] {SourceContext}{NewLine}{Message:lj}{NewLine}{Exception}{NewLine}", theme: AnsiConsoleTheme.Code) .CreateLogger(); try { Log.Information("Starting host..."); SQLiteConnectionProvider.Register(); MySqlConnectionProvider.Register(); if (ContainsArgument(args, "help") || ContainsArgument(args, "h")) { Console.WriteLine("Updates the database when its version does not match the application's version."); Console.WriteLine(); Console.WriteLine($" {Assembly.GetExecutingAssembly().GetName().Name}.exe --updateDatabase [--forceUpdate --silent]"); Console.WriteLine(); Console.WriteLine("--forceUpdate - Marks that the database must be updated whether its version matches the application's version or not."); Console.WriteLine("--silent - Marks that database update proceeds automatically and does not require any interaction with the user."); Console.WriteLine(); Console.WriteLine($"Exit codes: 0 - {DBUpdater.StatusUpdateCompleted}"); Console.WriteLine($" 1 - {DBUpdater.StatusUpdateError}"); Console.WriteLine($" 2 - {DBUpdater.StatusUpdateNotNeeded}"); } else { DevExpress.ExpressApp.FrameworkSettings.DefaultSettingsCompatibilityMode = DevExpress.ExpressApp.FrameworkSettingsCompatibilityMode.Latest; var host = CreateHostBuilder(args).Build(); if (ContainsArgument(args, "updateDatabase")) { using var serviceScope = host.Services.CreateScope(); return(serviceScope.ServiceProvider.GetRequiredService <IDBUpdater>().Update(ContainsArgument(args, "forceUpdate"), ContainsArgument(args, "silent"))); } else { Log.Information("Host run..."); host.Run(); } } return(0); } catch (Exception ex) { Log.Fatal(ex, "Host terminated unexpectedly."); return(1); } finally { Log.CloseAndFlush(); } }
protected override async void OnInitialized() { InitializeComponent(); AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; var documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); //MSSqlServer //string connectionString = MSSqlConnectionProvider.GetConnectionString("YOUR_SERVER_NAME", "sa", "", "XamarinDemo"); //SQLite var filePath = Path.Combine(documentsPath, "xpoXamarinDemo.db"); string connectionString = SQLiteConnectionProvider.GetConnectionString(filePath) + ";Cache=Shared;"; //In-memory data store with saving/loading from the xml file //var filePath = Path.Combine(documentsPath, "xpoXamarinDemo.xml"); //string connectionString = InMemoryDataStore.GetConnectionString(filePath); //DevExpress.Xpo.SimpleDataLayer.SuppressReentrancyAndThreadSafetyCheck = true; XPOWebApi.Register(); connectionString = XPOWebApi.GetConnectionString("http://192.168.122.101/BitServer", string.Empty, "db1"); XpoHelper.InitXpo(connectionString); using (var UoW = XpoHelper.CreateUnitOfWork()) { if (UoW.Query <Contact>().Count() == 0) { Contact Joche = new Contact(UoW) { Name = "Jose Manuel Ojeda Melgar", Phone = "+7897654321" }; Contact Javier = new Contact(UoW) { Name = "Jose Javier Columbie", Phone = "+1897654321" }; Contact Jaime = new Contact(UoW) { Name = "Jaime Macias", Phone = "+123423431" }; Contact Rafael = new Contact(UoW) { Name = "Rafael Gonzales", Phone = "+14305345345" }; } if (UoW.InTransaction) { UoW.CommitChanges(); } } await NavigationService.NavigateAsync("NavigationPage/ContactList"); }
static void Main(string[] args) { string appDataPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "DevExpress.Xpo.ConsoleCoreDemo"); if (!Directory.Exists(appDataPath)) { Directory.CreateDirectory(appDataPath); } // XPO data layer setup against a local SQLite database. Learn more at https://documentation.devexpress.com/CoreLibraries/2020/DevExpress-ORM-Tool/Feature-Center/Connecting-to-a-Data-Store. string connectionString = SQLiteConnectionProvider.GetConnectionString(Path.Combine(appDataPath, "myXpoApp.db")); XpoDefault.DataLayer = XpoDefault.GetDataLayer(connectionString, AutoCreateOption.DatabaseAndSchema); XpoDefault.Session = null; try { Console.WriteLine(); Console.WriteLine(" ***************************************************************************************************************|"); Console.WriteLine(" XPO console demo application 1.0"); Console.WriteLine(" Uses eXpressPersistent Objects (XPO) for .NET Standard 2.0 - Object-Relational Mapping for .NET Developers"); Console.WriteLine(" and Microsoft.Data.Sqlite 2.0 - ADO.NET provider for SQLite database"); Console.WriteLine(" ***************************************************************************************************************|"); while (true) { Console.WriteLine(); Console.WriteLine("- Enter some text to create a new record."); Console.WriteLine("- Say \"show\" to display stored records."); Console.WriteLine("- Say \"clear\" to delete all records."); Console.WriteLine("- Say \"xpo\" to learn more."); Console.WriteLine("- Say \"quit\" for exit."); Console.WriteLine(); Console.Write("XPO > "); string result = Console.ReadLine(); switch (result.ToLowerInvariant()) { case "show": Console.WriteLine(); Console.WriteLine("|-------------------- start --------------------|"); using (UnitOfWork uow = new UnitOfWork()) { var query = uow.Query <StatisticInfo>() .OrderBy(info => info.Date) .Select(info => $"[{info.Date}] {info.Info}"); foreach (var line in query) { Console.WriteLine(line); } } Console.WriteLine("|-------------------- end --------------------|"); Console.WriteLine(); break; case "clear": // Querying and deleting XPO objects. Learn more at https://documentation.devexpress.com/CoreLibraries/2026/DevExpress-ORM-Tool/Feature-Center/Data-Exchange-and-Manipulation/Deleting-Persistent-Objects. using (UnitOfWork uow = new UnitOfWork()) { var itemsToDelete = uow.Query <StatisticInfo>().ToList(); if (itemsToDelete.Count > 0) { var pluralEnding = itemsToDelete.Count > 1 ? "s" : ""; Console.Write($"Are you sure you want to delete {itemsToDelete.Count} record{pluralEnding} (y/N)?: "); if (Console.ReadLine().ToLowerInvariant() == "y") { uow.Delete(itemsToDelete); uow.CommitChanges(); Console.WriteLine($"Done."); } } else { Console.WriteLine("There are no records to delete."); } } break; case "exit": case "quit": return; case "xpo": { Console.WriteLine("Starting browser..."); } break; default: // Creating and saving a new XPO object. Learn more at https://documentation.devexpress.com/CoreLibraries/2023/DevExpress-ORM-Tool/Feature-Center/Data-Exchange-and-Manipulation. using (UnitOfWork uow = new UnitOfWork()) { StatisticInfo newInfo = new StatisticInfo(uow); newInfo.Info = result; newInfo.Date = DateTime.Now; uow.CommitChanges(); Console.WriteLine("Saved."); } break; } } } catch (Exception ex) { Console.WriteLine(ex.ToString()); Console.ReadKey(); } }
static FeatureCenterBlazorApplication() { SQLiteConnectionProvider.Register(); MySqlConnectionProvider.Register(); }
public override bool DatabaseExists() { var fullDbPath = SQLiteConnectionProvider.GetFullDBPath(Settings); return(File.Exists(fullDbPath)); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.Configure <IdentityOptions>(options => { // Password settings. options.Password.RequireDigit = true; options.Password.RequireLowercase = true; options.Password.RequireNonAlphanumeric = true; options.Password.RequireUppercase = true; options.Password.RequiredLength = 6; options.Password.RequiredUniqueChars = 1; // Lockout settings. options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromMinutes(5); options.Lockout.MaxFailedAccessAttempts = 5; options.Lockout.AllowedForNewUsers = true; // User settings. options.User.AllowedUserNameCharacters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._@+"; options.User.RequireUniqueEmail = false; }); services .AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme) .AddCookie(CookieAuthenticationDefaults.AuthenticationScheme, options => { // Cookie settings options.Cookie.HttpOnly = true; options.ExpireTimeSpan = TimeSpan.FromMinutes(5); options.LoginPath = "/api/login"; options.AccessDeniedPath = "/api/register"; options.SlidingExpiration = true; }); var dbSettings = new DbSettings() { DataBasePath = "db/main.db", Name = "main", Password = "" }; var creator = new SQLiteDBCreator(dbSettings, _logger); if (!creator.DatabaseExists()) { creator.CreateEmptyDB(); } var connectionHolder = new SQLiteConnectionProvider(dbSettings, _logger); DapperExtensions.DapperExtensions.SqlDialect = new DapperExtensions.Sql.SqliteDialect(); var database = new Database(connectionHolder.CreateConnection(), new SqlGeneratorImpl(new DapperExtensionsConfiguration(typeof(AutoClassMapper <>), new[] { typeof(SqliteClassMapping).Assembly }, new SqliteDialect()))); services.AddSingleton <IFileStorage>(new FileStorage("db/images")); services.AddSingleton <IDatabase>(database); services.AddSingleton <IUserManager, UserManager>(); services.AddSingleton <IPointManager, PointManager>(); services.AddSingleton <IPointCommentEntityManager, PointCommentEntityManager>(); services.AddSingleton <ILikeManager, LikeManager>(); services.AddLogging(config => { config.AddDebug(); config.AddConsole(); }); services.AddMvc(options => { options.InputFormatters.Insert(0, new BinaryInputFormatter()); }).SetCompatibilityVersion(CompatibilityVersion.Version_2_2); }