在开始学习XPO时,需要连接到数据库且需要获得数据库服务器时间,连接ORACLE Session.DefaultSession.Connection = new OracleConnection(Data Source=dbserver;User ID=system;Password=oracle); Session.DefaultSession.AutoCreateOption = AutoCreateOpti
在开始学习XPO时,需要连接到数据库且需要获得数据库服务器时间,连接ORACLE
Session.DefaultSession.Connection = new OracleConnection("Data Source=dbserver;User ID=system;Password=oracle");
Session.DefaultSession.AutoCreateOption = AutoCreateOption.SchemaOnly;
Session.DefaultSession.Connect();
读取服务器时间:
public static class oracleGetsysDate {
public static DateTime sysDate()
{
System.Data.IDbCommand command;
//System.Data.IDataReader reader;
command = DevExpress.Xpo.Session.DefaultSession.Connection.CreateCommand();
command.CommandText = "Select sysdate from dual";
//reader = command.ExecuteReader();
string dtm = command.ExecuteScalar().ToString();
DateTime jtdtm = DateTime.Parse(dtm);
return jtdtm;
}
调用:
DateTime dt = oracleGetsysDate.sysDate().Date;
XPO的业务类:
公共类测试:XPLiteObject
{
字符串 fDEPT_CODE;
[关键]
[尺寸(10)]
[DbType("varchar2(30)")][Persistent("Dept_code")][DisplayName("科室代码")]
公共字符串 DEPT_CODE
{
获取{返回fDEPT_CODE; }
设置 { SetPropertyValue
}
字符串 fDEPT_NAME;
[尺寸(30)]
公共字符串 DEPT_NAME
{
获取{返回fDEPT_NAME; }
设置 { SetPropertyValue
}
日期时间 fCREATEDATE;
公共日期时间创建
{
获取{返回fCREATEDATE; }
设置{
SetPropertyValue
}
公共测试(会话会话):基础(会话){}
public TEST() : base(Session.DefaultSession) { }
公共覆盖无效AfterConstruction(){base.AfterConstruction(); }
protected override void OnSaving()
{
base.OnSaving();
if (!IsDeleted)
{
UnitOfWork uw = new UnitOfWork();
if (fDEPT_CODE == null || fDEPT_CODE == "")
throw new Exception("科室代码不能置空值,保存失败!");
}
}
protected override void Spoil(布尔处置)
{
base.Spoil(处置);
}
}
调用XPO:
try
{
DateTime dt = oracleGetsysDate.sysDate().Date;
dbserver.TEST test = new TEST();
test.DEPT_CODE = "123";
test.DEPT_NAME = "Test2";
test.CREATEDATE = dt;
test.Save();
// DateTime dt = oracleGetsysDate.sysDate();
//this.textBox1.Text = dt.ToString();//得到查询表的第一行第一列
}
catch (Exception ex)
{
MessageBox.Show(ex.Message,"提示");
}
XPO的初步学习比较简单。