对象关系映射(ORM)及代码生成器和插件C#源码(DBFrameworkV4.5.3)

1. ORM及代码生成器和插件C#源码(DBFrameworkV4.5.3)

一、使用对象关系映射组件Kenly.DBFramework.dll不用编写任何SQL或者存储过程即可实现下列功能:
1、数据表、视图和存储过程与对象之间的转换。
2、数据表、视图的自定义条件查询。
3、数据表、视图的分页查询。
4、根据ID、主键或自定义条件对数据表进行增、删、改操作。
5、实现一对一、一对多、多对一和多对多的关系映射。
6、支持单个对象和多个对象之间的事务控制。
7、支持查询结果排序。
8、支持查询表达式生成。
9、支持延迟加载。

二、代码生成器
1、根据指定的数据库连接,自动生成数据表、视图和存储过程对应的对象代码(C#代码)。
2、自动生成相关的工程文件,生成完整的业务层项目文件。
3、可以帮助生成自定义查询方法。
4、支持SQLServer2000、SQLServer2005和Oracle代码生成插件,支持插件扩展。

提供
1、对象关系映射组件: Kenly.DBFramework.dll
2、代码生成器源码:Xsd2CS。
3、代码生成器插件源码(支持SQLServer2000、SQLServer2005和Oracle):Plugin。
4、使用手册:DBFramework.Manual V4.5.3.pdf。 

下载地址:http://download.csdn.net/source/720607   

 [Serializable()]
    [Table(TableName = "usyUser")]
    public class BusinessUser : SqlTableGateway<BusinessUser>, ICloneable
    {

        public BusinessUser()
        {
            string connectionString = SystemConfig.ConnectionString;
            base.InitializeGateway(connectionString, this);
        }

        略.............

        #region Properties

        [Column(ColumnName = "UserId", IsIdentity = true, IsPrimaryKey = true)]
        public int UserId
        {
            get { return _userId; }
            set { _userId = value; }
        }

        [Column(ColumnName = "EmployeeNumber")]
        public string EmployeeNumber
        {
            get { return _employeeNumber; }
            set { _employeeNumber = value; }
        }

        [Column(ColumnName = "UserName")]
        public string UserName
        {
            get { return _userName; }
            set { _userName = value; }
        }


       Role[] _roles = new Role[0];
      [Relation(RelationType = RelationType.ManyToMany, InterrelationType = typeof(UserRole), ResultOrder = "RoleName ASC")]
        public Role[] Roles
        {
            get { return _roles; }
            set { _roles = value; }
        }



      public DataTable RoleTable
        {
            get
            {
                Role role = new Role();
                return role.ToTable(_roles, false);
            }
        }

      #endregion //Properties



       }

        Role role = new Role();
        gvRole.DataSource = role.QueryAll();
        gvRole.DataBind();

        Role role = new Role();
        int roleId=1;
        role.RoleId = roleId;
        role.IsActive = false;
        role.PartialUpdateById("IsActive") ;

        Role role = new Role();
        int roleId=1;
        role.RoleId = roleId;
        role.RetrieveById();
        role.IsActive = false;
        role.UpdateById() ;

        BusinessUser user = new BusinessUser();
        user.UserId = 2;
        user.RetrieveRelationObject(typeof(Role));

做个快乐的自己。
原文地址:https://www.cnblogs.com/Jessy/p/1900767.html