C#发现之旅:使用反射和特性构造自己的ORM框架(下)
2010-09-30 21:08:45 来源:WEB开发网private void cmdDelete_Click(object sender, System.EventArgs e)
{
DB_Employees obj = this.lstName.SelectedItem as DB_Employees ;
if( obj != null )
{
if( MessageBox.Show(
this ,
"是否删除 " + obj.FullName + " 的纪录?",
"系统提示" ,
System.Windows.Forms.MessageBoxButtons.YesNo ) == DialogResult.Yes )
{
using( MyORMFramework myWork = this.CreateFramework())
{
myWork.DeleteObject( obj );
RefreshList( myWork );
}
}
}
}
在这个按钮点击事件处理中,程序首先让用户确认删除操作,然后创建一个ORM框架对象,然后调用它的DeleteObject函数来删除对象对应的数据库记录,然后调用RefreshList函数来刷新列表。
从这个例子可以看出,使用ORM框架,对于最常见的查询,新增,修改和删除数据库记录的操作将变得比较简单,而且和数据库表对应的对象类型的代码很简单,可以很容易的采用代码生成器来生成它们的代码,以后若数据库结构发生改变,只需更新这些数据表对应的实体类的代码就可以了。这些特性都能比较大的降低开发和维护成本,提高开发速度。
部署ORM框架
由于这个ORM框架是轻量级的,不依赖任何其他非标准组件,因此部署非常方便,我们可以将修改这个演示程序工程样式为DLL样式,编译生成一个DLL即可投入使用,也可以将代码文件MyORMFramework.cs或者其内容复制粘贴到你的C#工程中即可。
小结
在本课程中,我们使用了.NET框架提供的反射和特性来构造了一个简单的ORM框架。反射就是.NET程序的基因分析技术,功能强大,使用也不复杂。特性本身不影响程序的运行,但能对各种软件编程单元进行标记,可以指引某些程序模块的运行。反射和特性都是C#的一种比较高级的编程技巧,好好利用可以构造出非常灵活的程序框架。
更多精彩
赞助商链接