Object Relational Mapping,简称ORM,相信大家应该都很熟悉吧,是一种为了解决面向对象与关系数据库存在的互不匹配现象的技术。运用O/R Mapping模式去开发数据库应用可以节省大量的工作量,特别是烦琐的SQL语句编写,当然采用O/R Mapping技术也有它的缺点,事物总是不完美的吗!

doHope.Net生成器实现O/R Mapping技术同时根据项目实际因素,生成业务层与数据层的代码,为开发管理信息系统节省了大量的时间。
    
          需要注意的是数据库表一定要有主键。
 
现发布V 1.0版本(SQL版),欢迎提供使用过程中的bug                下载doHope.Net生成器
 
代码生成器界面:


 
下面为一个测试项目的截图,采用三层架构,其中BLLDAL层为代码自动生成。

 
下面举几个简单的示例  

配置Global.asax.cs(数据库连接及类型),如下

        protected void Application_Start(Object sender, EventArgs e)
        
{
            
string ConnectionString = System.Configuration.ConfigurationSettings.AppSettings["SqlConnectionString"].ToString() ;
            TS.DAL.Database.ConnectionString 
= ConnectionString;
            TS.DAL.Database.DatabaseType 
= TS.DAL.DatabaseType.SQLServer;
        }

新增记录示例:

                city ct = new city() ;
                cityRow cr 
= ct.CreateRow() ;
                cr.id 
= city.GetNextId("") ;
                cr.cityID 
= this.TextBox6.Text.Trim() ;
                cr.city 
= this.TextBox5.Text.Trim() ;
                cr.father 
= this.TextBox4.Text.Trim() ;

                ct.Save() ;

修改记录示例:

                city ct = new city(Convert.ToDecimal(this.key.Text)) ;
                ct[
0,0].cityID = this.TextBox1.Text.Trim() ;
                ct[
0,0].city = this.TextBox2.Text.Trim() ;
                ct[
0,0].father = this.TextBox3.Text.Trim() ;

                ct.Save() ;

删除记录示例:

                city ct = new city(Convert.ToDecimal(this.key.Text)) ;
                cityRow cr 
= ct[Convert.ToDecimal(this.key.Text)] ;
                ct.Delete(cr) ;

查询读数据:

                city ct = new city(Convert.ToDecimal(i)) ;
                
this.TextBox1.Text = ct[0,0].cityID ;
                
this.TextBox2.Text = ct[0,0].city ;
                
this.TextBox3.Text = ct[0,0].father ;
                
this.key.Text = ct[0,0].id.ToString() ;