static void Main(string[] args) { string cs = MSSqlConnectionProvider.GetConnectionString("localhost", "XpoSLExample"); XpoDefault.DataLayer = XpoDefault.GetDataLayer(cs, AutoCreateOption.DatabaseAndSchema); XpoDefault.Session = null; try { using (UnitOfWork uow = new UnitOfWork()) { uow.UpdateSchema(typeof(Program).Assembly); uow.CreateObjectTypeRecords(typeof(Program).Assembly); Person p = uow.FindObject <Person>(null); if (p == null) { new Person(uow) { FirstName = "Jake", LastName = "Smith", Birthdate = new DateTime(1990, 10, 1) }; new Person(uow) { FirstName = "Bill", LastName = "Simpson", Birthdate = new DateTime(1982, 2, 20) }; new Person(uow) { FirstName = "Harry", LastName = "Jonathan", Birthdate = new DateTime(1972, 5, 17) }; uow.CommitChanges(); } Console.WriteLine("Update successful."); } } catch (Exception) { Console.WriteLine("Update failed."); } Console.WriteLine("Press any key..."); Console.ReadKey(); }
public static void CreateSessions() { // generazione sequenziale dei GUID XpoDefault.GuidGenerationMode = GuidGenerationMode.UuidCreateSequential; //IDataStore store = XpoDefault.GetConnectionProvider("", AutoCreateOption.None); //XpoDefault.DataLayer = new SimpleDataLayer(store); XpoDefault.DataLayer = null; XpoDefault.Session = null; var sex = new Session[2]; IDataStore store1 = XpoDefault.GetConnectionProvider(MSSqlConnectionProvider.GetConnectionString( "192.168.0.20", "sa", "xxx", "MuseiXafRev1locale"), AutoCreateOption.None); IDataStore store2 = XpoDefault.GetConnectionProvider(MSSqlConnectionProvider.GetConnectionString( "192.168.0.30", "sa", "xxx", "MuseiXafRev1locale"), AutoCreateOption.None); sex[0] = new Session(new SimpleDataLayer(store1)); sex[1] = new Session(new SimpleDataLayer(store2)); Sessions = sex; }
private void GetSalesRate() { try { string sqlquery = ""; sqlquery = " select top 1 price from billdet where prodcode='" + Product.Code + "' and Custcode='" + SalesInvoice.Customer.ERPCode + "' order by bill_date desc"; //Initialize your data layer. //By default if you don't do this, XPO will try and use an access databse (jet) Session session = new Session(); XpoDefault.DataLayer = XpoDefault.GetDataLayer(MSSqlConnectionProvider.GetConnectionString(SalesInvoice.Company.ServerName, SalesInvoice.Company.ERPMasterDB + SalesInvoice.Company.Initials), AutoCreateOption.None); //XpoDefault.DataLayer = XpoDefault.GetDataLayer(MSSqlConnectionProvider.GetConnectionString("ACC00", SalesInvoice.Company.ERPMasterDB + SalesInvoice.Company.Initials), AutoCreateOption.None); XpoDefault.Session = session; //Equivalent of SELECT * FROM TableName in SQL // YourClassName would be your XPO object (your persistent object) using (var uow = new UnitOfWork()) { SelectedData sd = uow.ExecuteQuery(sqlquery); foreach (var item in sd.ResultSet) { Price = Convert.ToDecimal(item.Rows[0].Values[0]); } } } catch (Exception ex) { } }
static void Main() { string conn = MSSqlConnectionProvider.GetConnectionString("(local)", "Northwind"); XpoDefault.DataLayer = XpoDefault.GetDataLayer(conn, AutoCreateOption.None); Application.Run(new Form1()); }
static IDataLayer SetupDB1() { string connString = MSSqlConnectionProvider.GetConnectionString("(local)", "SampleDB1"); XPDictionary dict = new ReflectionDictionary(); dict.CollectClassInfos(typeof(Contact)); IDataLayer dal = XpoDefault.GetDataLayer(connString, dict, AutoCreateOption.DatabaseAndSchema); using (UnitOfWork uow = new UnitOfWork(dal)) { uow.UpdateSchema(typeof(Contact)); if (uow.FindObject <Contact>(null) == null) { Contact contact1 = new Contact(uow) { FirstName = "John", LastName = "Doe" }; Contact contact2 = new Contact(uow) { FirstName = "Paul", LastName = "Smith" }; uow.CommitChanges(); } } return(dal); }
static void Main(string[] args) { XpoDefault.DataLayer = XpoDefault.GetDataLayer( MSSqlConnectionProvider.GetConnectionString("(localdb)\\mssqllocaldb", "ModifyXPQueryTest"), AutoCreateOption.DatabaseAndSchema); CreateTestData(); using (var uow = new UnitOfWork()) { // This works - obviously //var data = CollectionData(uow); // This also works - returning data from an XPQuery, but without projection var data = QueryDataFullObjects(uow); // This wouldn't work - if the type is not Person, I couldn't modify it // var data = QueryDataPartialObjects(uow); ModifyObjects(data); uow.CommitChanges(); } OutputData(); }
public MainForm() { InitializeComponent(); #if USE_DB XpoDefault.ConnectionString = MSSqlConnectionProvider.GetConnectionString(".", "sa", "123", "testdb"); #if USE_SESSION _session = new Session(); #else _unitOfWork = new UnitOfWork(); #endif #endif var classInfo = #if USE_SESSION _session #else _unitOfWork #endif .GetClassInfo <TestDetail>(); var memberInfo = classInfo.GetMember(nameof(TestDetail.MasterVal)); Debug.WriteLine(memberInfo.IsReadOnly); gridControl.DataSource = DataSource; //gridView.OptionsSelection.UseIndicatorForSelection = false; InitializeComponentWithFilter(); InitializeComponentWithValidation(); }
/// <summary> /// It does load database connection. /// </summary> public static void LoadingDatabaseConnection() { try { // Database connection string properties. var server = @"ALBERTO-PC\SQL"; var dbUser = "******"; var dbPassword = "******"; var dbName = "XpoTestDatabase"; // It does create the database connection and bring back the unit of work that will be used. var connection = MSSqlConnectionProvider.GetConnectionString(server, dbUser, dbPassword, dbName); var dataLayerLocal = XpoDefault.GetDataLayer(connection, AutoCreateOption.DatabaseAndSchema); var unitOfWork = new UnitOfWork(dataLayerLocal); unitOfWork.Connect(); // It does update database structure. unitOfWork.UpdateSchema(); // It does create a new user. var user = new User(unitOfWork); user.UserName = "******"; user.Password = "******"; // It does persist new user data in datbase. unitOfWork.CommitChanges(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private static IDataLayer GetDataLayer() { // set XpoDefault.Session to null to prevent accidental use of XPO default session XpoDefault.Session = null; string conn = MSSqlConnectionProvider.GetConnectionString("(local)", "XpoWebTest"); XPDictionary dict = new ReflectionDictionary(); /* Note: The database schema must exactly match your persistent classes' definition. ASP.NET applications * should not update the database schema themselves; moreover, they often don't have enough permission * to read the database schema. You may need to create a separate tool which manages your database. * On the one hand, we recommend using AutoCreateOption.SchemaAlreadyExists for the XPO data layer of your * Web site. On the other hand, the ThreadSafeDataLayer intensively uses data which is stored in the XPO's * XPObjectType service table. This sample project maps to the XpoWebTest database on your MS SQL Server. * This database is created via the DatabaseUpdater project, which must be launched before this Site is * published. */ IDataStore store = XpoDefault.GetConnectionProvider(conn, AutoCreateOption.SchemaAlreadyExists); // initialize the XPO dictionary dict.GetDataStoreSchema(typeof(PersistentObjects.Customer).Assembly); // create a ThreadSafeDataLayer IDataLayer dl = new ThreadSafeDataLayer(dict, store); return(dl); }
public static IDataLayer GetDataLayer() { XpoDefault.Session = null; var uow = XpoHelper.GetNewUnitOfWork(); var sqlConnection = uow.FindObject <SQLConnection>(CriteriaOperator.Parse("Oid==?", 1)); //string conn = MySqlConnectionProvider.GetConnectionString("localhost", "root", "", "CUFE"); string sqlConnectionString = MSSqlConnectionProvider.GetConnectionString(sqlConnection.IP, sqlConnection.user, sqlConnection.password, sqlConnection.Datenbank); //string conn = System.Configuration.ConfigurationManager.ConnectionStrings[sqlConnectionString].ConnectionString; XPDictionary dict = new ReflectionDictionary(); IDataStore store = XpoDefault.GetConnectionProvider(sqlConnectionString, AutoCreateOption.None); //DevExpress.Xpo.Metadata.ReflectionClassInfo.SuppressSuspiciousMemberInheritanceCheck = true; //dict.GetDataStoreSchema(typeof(Inscripcion).Assembly); //IDataLayer dl = new ThreadSafeDataLayer(dict, store); ////using (UnitOfWork uow = new UnitOfWork(dl)) ////{ //// int cnt = (int)uow.Evaluate<CUFE.Models.Country>(CriteriaOperator.Parse("count"), null); //// if (cnt == 0) //// { //// new CUFE.Models.Country(uow) { CountryName = "Germany" }; //// uow.CommitChanges(); //// } ////} //return dl; return(XpoDefault.GetDataLayer(sqlConnectionString, AutoCreateOption.SchemaAlreadyExists)); }
public MainForm() { InitializeComponent(); XpoDefault.ConnectionString = MSSqlConnectionProvider.GetConnectionString(".", "sa", "123", "testdb"); _dataSet = GenerateDataSet(); SetDataSource(_dataSet.Tables[TableNameWithMainData]); gridView.OptionsBehavior.EditorShowMode = EditorShowMode.MouseDown; // https://www.devexpress.com/Support/Center/Question/Details/Q295448 In order to edit checkbox column 2 click is needed, how do I get around that? gridView.Columns[FieldNameWithLookUp].ColumnEdit = CreateLookUpEditor(); gridView.Columns[FieldNameWithGridLookUp].ColumnEdit = CreateGridLookUpEditor(); gridView.BestFitColumns(); gridView.ShowingEditor += GridView_ShowingEditor; gridView.ShownEditor += GridView_ShownEditor; gridView.CellValueChanging += GridView_CellValueChanging; gridView.CellValueChanged += GridView_CellValueChanged; gridView.HiddenEditor += GridView_HiddenEditor; gridView.CustomRowCellEditForEditing += GridView_CustomRowCellEditForEditing; gridView.CustomRowCellEdit += GridView_CustomRowCellEdit; gridControlMasterDetail.DataSource = new XPCollection <TestMaster>(); //gridViewMasterDetail.OptionsBehavior.EditorShowMode = EditorShowMode.Default; }
private XPObjectSpaceProvider CreateObjectSpaceProvider() { MSSqlClientHelper.DropDatabase(ServerName, DatabaseName); MSSqlClientHelper.CreateDatabase(ServerName, DatabaseName, DataPath); string connectionString = MSSqlConnectionProvider.GetConnectionString(ServerName, DatabaseName); return(new XPObjectSpaceProvider(connectionString, null)); }
static void Main() { string conn = MSSqlConnectionProvider.GetConnectionString("(local)", "Northwind"); XpoDefault.DataLayer = XpoDefault.GetDataLayer(conn, AutoCreateOption.SchemaAlreadyExists); XpoDefault.Session.Dictionary.CollectClassInfos(typeof(Customer).Assembly); Application.Run(new Form1()); }
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; }
private void xpInstantFeedbackSource1_ResolveSession(object sender, ResolveSessionEventArgs e) { session1 = new Session() { ConnectionString = MSSqlConnectionProvider.GetConnectionString("(local)", "NorthWind") }; session1.Connect(); e.Session = session1; }
static void Main() { string connectionStr = MSSqlConnectionProvider.GetConnectionString("(local)", "Northwind"); XpoDefault.DataLayer = XpoDefault.GetDataLayer(connectionStr, AutoCreateOption.DatabaseAndSchema); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); }
static Service1() { string connectionString = MSSqlConnectionProvider.GetConnectionString("localhost", "ServiceDB"); IDataStore dataStore = XpoDefault.GetConnectionProvider(connectionString, AutoCreateOption.DatabaseAndSchema); XPDictionary dictionary = new ReflectionDictionary(); dictionary.CollectClassInfos(typeof(Customer).Assembly); XpoDefault.DataLayer = new ThreadSafeDataLayer(dictionary, dataStore); XpoDefault.Session = null; }
static void Main() { string connectionString = MSSqlConnectionProvider.GetConnectionString(@"(local)", "Customers"); XpoDefault.DataLayer = XpoDefault.GetDataLayer(connectionString, DevExpress.Xpo.DB.AutoCreateOption.DatabaseAndSchema); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); CreateTable(); Application.Run(new Form1()); }
private static IDataLayer GetDataLayer() { XpoDefault.Session = null; XPDictionary dict = new ReflectionDictionary(); dict.GetDataStoreSchema(typeof(Person).Assembly, typeof(bi.AuditDataItemPersistent).Assembly, typeof(AuditDataItem).Assembly); return(new ThreadSafeDataLayer(dict, XpoDefault.GetConnectionProvider(MSSqlConnectionProvider.GetConnectionString("(local)", "Q295139"), AutoCreateOption.DatabaseAndSchema))); }
private static IDataLayer GetDataLayer() { XpoDefault.Session = null; XPDictionary dict = new ReflectionDictionary(); dict.GetDataStoreSchema(typeof(Category).Assembly); return(new ThreadSafeDataLayer(dict, XpoDefault.GetConnectionProvider(MSSqlConnectionProvider.GetConnectionString("(local)", "Northwind"), AutoCreateOption.None))); }
public MainForm() { InitializeComponent(); XpoDefault.ConnectionString = MSSqlConnectionProvider.GetConnectionString("i-nozhenko", "sa", "123", "testdb"); _session = new Session(); gridControl.DataSource = new XPServerCollectionSource(_session, _session.GetClassInfo(typeof(TestDE))); //((XPServerCollectionSource)gridControl.DataSource).TrackChanges = true; }
private static IDataLayer GetDataLayer() { XpoDefault.Session = null; string conn = MSSqlConnectionProvider.GetConnectionString(resources.api.cdsonline.co.za.Properties.Settings.Default.Server.ToString(), resources.api.cdsonline.co.za.Properties.Settings.Default.DB.ToString()); //XPDictionary dict = new ReflectionDictionary(); IDataStore store = XpoDefault.GetConnectionProvider(conn, AutoCreateOption.SchemaAlreadyExists); //dict.GetDataStoreSchema(typeof(PersistentObjects.Customer).Assembly); IDataLayer dl = new SimpleDataLayer(store); //new ThreadSafeDataLayer(dict, store); return(dl); }
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(); }
public static string GetConnectionString(bool isOnline) { if (isOnline) { return(ConfigurationManagerEx.UserName.Length > 0 ? MSSqlConnectionProvider.GetConnectionString(ConfigurationManagerEx.ServerName, ConfigurationManagerEx.UserName, ConfigurationManagerEx.Password, ConfigurationManagerEx.DatabaseName) : MSSqlConnectionProvider.GetConnectionString(ConfigurationManagerEx.ServerName, ConfigurationManagerEx.DatabaseName)); } else { return(ConfigurationManagerEx.OfflineUserName.Length > 0 ? MSSqlConnectionProvider.GetConnectionString(ConfigurationManagerEx.OfflineServerName, ConfigurationManagerEx.OfflineUserName, ConfigurationManagerEx.OfflinePassword, ConfigurationManagerEx.OfflineDatabaseName) : MSSqlConnectionProvider.GetConnectionString(ConfigurationManagerEx.OfflineServerName, ConfigurationManagerEx.OfflineDatabaseName)); } }
static void Main() { XPBaseObject.AutoSaveOnEndEdit = false; string conn = MSSqlConnectionProvider.GetConnectionString("(local)", "AdventureWorks"); ReadOnlyDataStore readOnlyStore = new ReadOnlyDataStore(XpoDefault.GetConnectionProvider(conn, AutoCreateOption.SchemaAlreadyExists)); XpoDefault.DataLayer = new SimpleDataLayer(readOnlyStore); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); }
private static void DBSetup() { XpoDefault.GuidGenerationMode = GuidGenerationMode.UuidCreateSequential; string conn = MSSqlConnectionProvider.GetConnectionString("hde01", "sa", "xxx", "MuseiXafTest1"); IDataStore store = XpoDefault.GetConnectionProvider(conn, AutoCreateOption.None); XpoDefault.DataLayer = new SimpleDataLayer(store); XpoDefault.Session = null; }
private void Generation_Execute(object sender, SimpleActionExecuteEventArgs e) { string connectionString = MSSqlConnectionProvider.GetConnectionString("ART-LAPTOP\\SQLEXPRESS", "TestEx2"); XpoDefault.DataLayer = XpoDefault.GetDataLayer(connectionString, AutoCreateOption.DatabaseAndSchema); Session session = new Session(); for (int i = 1; i < 101; i++) { Airport a = new Airport(session); a.NameOfAirport = "Аэропорт " + i.ToString(); Pilot b = new Pilot(session); b.Name = "Пилот " + i.ToString() + "0"; Pilot c = new Pilot(session); c.Name = "Пилот " + i.ToString() + "1"; Plane d = new Plane(session); d.NameOfPlane = "Самолет " + i.ToString() + "0"; Plane f = new Plane(session); f.NameOfPlane = "Самолет " + i.ToString() + "1"; Plane g = new Plane(session); g.NameOfPlane = "Самолет " + i.ToString() + "2"; Plane h = new Plane(session); h.NameOfPlane = "Самолет " + i.ToString() + "3"; Plane j = new Plane(session); j.NameOfPlane = "Самолет " + i.ToString() + "4"; b.OwnPlane.Add(d); b.AllowedPlanes.Add(f); b.AllowedPlanes.Add(g); c.OwnPlane.Add(h); c.OwnPlane.Add(j); c.AllowedPlanes.Add(f); c.AllowedPlanes.Add(g); c.AllowedPlanes.Add(d); b.Airport = a; c.Airport = a; d.Airport = a; f.Airport = a; g.Airport = a; h.Airport = a; j.Airport = a; a.Save(); b.Save(); c.Save(); d.Save(); f.Save(); g.Save(); h.Save(); j.Save(); } //session.ClearDatabase(); }
static IDataLayer SetupDB2() { string connString = MSSqlConnectionProvider.GetConnectionString("(local)", "SampleDB2"); XPDictionary dict = new ReflectionDictionary(); dict.CollectClassInfos(typeof(Task)); IDataLayer dal = XpoDefault.GetDataLayer(connString, dict, AutoCreateOption.DatabaseAndSchema); using (UnitOfWork uow = new UnitOfWork(dal)) { uow.UpdateSchema(typeof(Task)); } return(dal); }
public static bool VerifyConnections(string ServerName, string DBName) { try { DevExpress.Xpo.XpoDefault.GetDataLayer(MSSqlConnectionProvider.GetConnectionString(ServerName, DBName), AutoCreateOption.None); } catch (UnableToOpenDatabaseException ex) { return(false); } return(true); }
static void Main(string[] args) { try { //DevExpress.Xpo.Metadata.ReflectionClassInfo.SuppressSuspiciousMemberInheritanceCheck = true; XpoDefault.ConnectionString = MSSqlConnectionProvider.GetConnectionString(".", "sa", "123", "testdb"); using (var session = new UnitOfWork()) { object tmpObject; var person = new Person(session); person.Id = (tmpObject = session.ExecuteScalar("select max(Id) + 1 from Person")) != null && !Convert.IsDBNull(tmpObject) ? Convert.ToInt32(tmpObject) : 1; person.Name = "Person"; session.Save(person); session.CommitChanges(); var employee = new Employee(session); employee.Id = (tmpObject = session.ExecuteScalar("select max(Id) + 1 from Person")) != null && !Convert.IsDBNull(tmpObject) ? Convert.ToInt32(tmpObject) : 1; employee.Name = "Employee"; employee.Salary = 123; person = session.GetObjectByKey <Person>(employee.Id); var employee2 = session.GetObjectByKey <Employee>(employee.Id); session.Save(employee); person = session.GetObjectByKey <Person>(employee.Id); employee2 = session.GetObjectByKey <Employee>(employee.Id); session.CommitChanges(); var executive = new Executive(session); executive.Id = (tmpObject = session.ExecuteScalar("select max(Id) + 1 from Person")) != null && !Convert.IsDBNull(tmpObject) ? Convert.ToInt32(tmpObject) : 1; executive.Name = "Executive"; executive.Salary = 456; executive.Bonus = 789; session.Save(executive); session.CommitChanges(); var customer = new Customer(session); customer.Id = (tmpObject = session.ExecuteScalar("select max(Id) + 1 from Person")) != null && !Convert.IsDBNull(tmpObject) ? Convert.ToInt32(tmpObject) : 1; customer.Name = "Customer"; customer.Preferences = "Preferences"; session.Save(customer); session.CommitChanges(); } } catch (Exception eException) { Console.WriteLine(eException.GetType().FullName + Environment.NewLine + "Message: " + eException.Message + Environment.NewLine + (eException.InnerException != null && !string.IsNullOrEmpty(eException.InnerException.Message) ? "InnerException.Message" + eException.InnerException.Message + Environment.NewLine : string.Empty) + "StackTrace:" + Environment.NewLine + eException.StackTrace); } }
private static IDataLayer GetDataLayer() { try { SqlConnection connection; MSSqlConnectionProvider connectionProvider; //Session workSession; connection = new SqlConnection(connectionString); connectionProvider = new MSSqlConnectionProvider(connection, AutoCreateOption.None); XpoDefault.Session = null; XPDictionary dict = new ReflectionDictionary(); IDataStore store = XpoDefault.GetConnectionProvider(connectionString, AutoCreateOption.SchemaAlreadyExists); string[] tablesList = connectionProvider.GetStorageTablesList(true); dynamicClasses = new Dictionary<string, DynamicDataTableClassInfo>(tablesList.Length); for (int i = 0; i < tablesList.Length; i++) { string tableName = tablesList[i]; SqlDataAdapter adapter = new SqlDataAdapter(string.Format("SELECT TOP 1 * FROM [{0}]", tableName), connection); DataTable dataTable = new DataTable(tableName); adapter.FillSchema(dataTable, SchemaType.Source); if (dataTable.PrimaryKey.Length == 0) { if (dataTable.Columns[0].DataType != typeof(Int32)) { DataColumn dc = new DataColumn(tableName + "_idgen"); dc.AutoIncrement = true; dc.AutoIncrementSeed = 1; dc.AutoIncrementStep = 1; dc.DataType = typeof(Int32); dataTable.Columns.Add(dc); DataColumn[] key = new DataColumn[1]; key[0] = dc; dataTable.PrimaryKey = key; } else { DataColumn[] key = new DataColumn[1]; key[0] = dataTable.Columns[0]; dataTable.PrimaryKey = key; } } dynamicClasses.Add(tableName, new DynamicDataTableClassInfo(dict, dataTable)); } IDataLayer dl = new ThreadSafeDataLayer(dict, store); return dl; } catch (Exception ex) { SiAuto.Main.LogColored(Color.Red, "Loi BindData:" + ex.ToString()); throw ex; } }