DevExpress 动态创建实例化类 (xpo)
来源:互联网 发布:动漫神作 知乎 编辑:程序博客网 时间:2024/05/18 00:13
使用xpo(devexpress)时动态创建一个持久化类。这样方便访问数据库。
/*
使用DevExpress 控件 xpo
XPObject 持久化对象 数据库访问 表 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]
/*
使用DevExpress 控件 xpo
XPObject 持久化对象 数据库访问 表 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]
- DevExpress 动态创建实例化类 (xpo)
- DevExpress ORM Tool (XPO)
- DevExpress XPO 学习笔记
- DevExpress XPO 常用功能
- DevExpress动态创建控件
- DevExpress XPO 开发指南 简要
- XPO中的Session实例和创建Access数据库
- DevExpress WidgetView动态创建Document
- 动态创建类实例
- Devexpress的XPO实在太难用了
- DevExpress,XPO如何与MSSQLServer表映射
- DevExpress XPO 数据库 连接与展示
- 动态创建类 和实例化类
- 动态创建类实例代码
- XPO
- 用.net动态创建类的实例
- C#动态创建类的实例
- Python中动态创建类实例
- 前后台页面跳转方式搜集
- Week 2: Project Planning
- 编译和安装busybox到android手机
- CSMA/CD 和 CSMA/CA 之原理
- IE6 相对定位容器中的绝对定位BUG
- DevExpress 动态创建实例化类 (xpo)
- 论对立同一性
- Week 3: Project Setup
- 将汉字转换为汉语拼音java实现
- hasLayout 介绍,以及其触发条件
- 系统cmd命令知识积累《一》
- ASP.NET让人很迷茫
- I2C总线入门
- eclipse无法编译工程的问题(导入自原博客)