本文共 1406 字,大约阅读时间需要 4 分钟。
使用xpo(devexpress)时动态创建一个持久化类。这样方便访问数据库。 /*使用DevExpress 控件 xpoXPObject 持久化对象 数据库访问 表 XPObject*///z 2011-07-27 22:06:55@is2120.CSDN 转载请注明出处class Program { static void Main(string[] args) { XpoDefault.DataLayer = XpoDefault.GetDataLayer(DevExpress.Xpo.DB.AutoCreateOption.DatabaseAndSchema); XPDictionary dictionary = XpoDefault.DataLayer.Dictionary; XPClassInfo myBaseClass = dictionary.GetClassInfo(typeof(MyBaseObject)); //z 动态创建持久化类(XPO) XPClassInfo myClassA = dictionary.CreateClass(myBaseClass, "MyObjectA"); //z 为之添加member,每个代表了一个列名 myClassA.CreateMember("ID", typeof(int)); myClassA.CreateMember("Name", typeof(string)); //z 2011-07-27 22:06:55@is2120.CSDN 转载请注明出处 //z 从数据库中得到myClassA表信息 XPCollection collection = new XPCollection(XpoDefault.Session, myClassA); //z 为新对象生成一个唯一的ID Random rnd = new Random(); int newId; do { newId = rnd.Next(100); } while(XpoDefault.Session.GetObjectByKey(myClassA, newId) != null); //z 创建一个新的实例 MyBaseObject objNew = (MyBaseObject)myClassA.CreateNewObject(XpoDefault.Session); } }//z 创建一个持久化类,注意从XPLiteObject创建。 [NonPersistent]public class MyBaseObject : XPLiteObject { public MyBaseObject(Session session) : base(session) { } public MyBaseObject(Session session, XPClassInfo classInfo) : base(session, classInfo) { } } //z 2013-02-27 14:01:30 IS2120@BG57IV3.T2355831976.K[T215,L2906,R88,V3140] 转载于:https://www.cnblogs.com/IS2120/archive/2011/07/27/6746030.html