现在的位置: 首页 > 综合 > 正文

DongLiORM 介绍

2012年12月25日 ⁄ 综合 ⁄ 共 4412字 ⁄ 字号 评论关闭
DongLiORM简介:
   DongLiORM是一个基于.net framework 2.0 的,开源的轻量级的ORM产品。目前仅支持Sql Server 2000及其以上版本。支持1-N映射关系,不用写专门的配置文件,比Castle更加简便(当然,功能就……^_^)。

示例:
1、首先在app.Config的appSettings节中加入如下语句:
  

    <!--数据链接字符串-->
    
<add key="DbCon" value="server=dbserver;UID=sa;PWD=1234;database=TQM_2007;Pooling=true;Max Pool Size=50; Min Pool Size=10;"/>        
    
<!--发送Email的帐号-->
    
<add key="EmailUser" value="EmailUser"/>
    
<!--发送Email帐号的密码-->
    
<add key="EmailPwd" value="Email Password"/>
    
<!--发送Email的Server-->
    
<add key="EmailServer" value="EmailServerName"/>
    
<!--是否发送Email,如果为false,则不会发送Email-->
    
<add key="SendEmail" value="true"/>
    
<!--在Select Top N语句中N的缺省值-->
    
<add key="DefaultTop" value="300"/>   

2、建立自己的业务类

  1)1-1示例

using System;
    
namespace BUL.Security
    
{
        
/// <summary>
        
/// 实体类UserItem 。(属性说明自动提取数据库字段的描述信息)
        
///  需要注意的是,属性名必须和字段名一一对应,这样就可以少些好多的配置文件了。
        
///  如果用过大名鼎鼎的NHibernate,你可能知道我为什么这样说了^_^。
        
/// </summary>
        
///         

        [DongLiORM.BusinessAtrribute("UsersView" //对应的数据表名称
            ,new string[]{"UserID"} //对应数据表的主键
            ,typeof(UserItem)  //对应的业务对象类型
            )]
        
public class UserItem:DongLiORM.BusinessObject
        
{
            
public UserItem()
            
{ }

            
private string _userid;
            
private string _username;
            
private string _pwd;
            
private string _email;
            
/// <summary>
            
/// 
            
/// </summary>

            public string UserID
            
{
                
set { _userid = value; }
                
get return _userid; }
            }

            
/// <summary>
            
/// 
            
/// </summary>

            public string UserName
            
{
                
set { _username = value; }
                
get return _username; }
            }

            
/// <summary>
            
/// 
            
/// </summary>

            public string Pwd
            
{
                
set { _pwd = value; }
                
get return _pwd; }
            }

            
/// <summary>
            
/// 
            
/// </summary>

            public string Email
            
{
                
set { _email = value; }
                
get return _email; }
            }
                 
        }

    }

  2)1-N示例

using System;
    
using System.Collections;
    
using System.Text;

    
namespace BUL.Security
    
{        
        [DongLiORM.BusinessAtrribute(
"Groups",new string[]{"GroupID"},typeof(GroupItem))]
        [DongLiORM.ChildFieldAtrribute(
"BelongUsers"//属性的名字
            typeof(UserGroupItem) //该属性的业务实体类
            )
            ] 
//1-N就在这里
        public class GroupItem:DongLiORM.BusinessObject
        
{
            
public GroupItem()
            

            }


            
public string GroupID
            
{
                
get
                
{
                    
return _GroupID;
                }

                
set
                
{
                    _GroupID 
= value;
                }

            }

            
private string _GroupID="";

            
public string GroupName
            
{
                
get
                
{
                    
return _GroupName;
                }

                
set
                
{
                    _GroupName 
= value;
                }

            }

            
private string _GroupName = "";

            
            
public UserGroupItem[] BelongUsers
            
{
                
get
                
{
                    
return (UserGroupItem[])_BelongUsers.ToArray(typeof(UserGroupItem));
                }

                
set
                
{
                    _BelongUsers.Clear();
                    _BelongUsers.AddRange(value);
                }

            }


            ArrayList _BelongUsers 
= new ArrayList();

            
public void AddUsers(object[] UserGroups)
            
{
                _BelongUsers.AddRange(UserGroups);
            }
  
        }

        
        
        [DongLiORM.BusinessAtrribute(
"UserGroups",new string[]{"UserID","GroupID"},typeof(UserGroupItem))]
        
public class UserGroupItem:DongLiORM.BusinessObject
        
{
            
public UserGroupItem()
            
{ }

            
public string UserID
            
{
                
get
                
{
                    
return _UserID;
                }

                
set
                
{
                    _UserID 
= value;
                }

            }

            
private string _UserID = "";


            
public string GroupID
            
{
                
get
                

抱歉!评论已关闭.