自动生成NHibernate配置文件工具的使用实例

自动生成NHibernate配置文件工具的使用实例



各位,由于最近研究NHibernate的朋友多起来了,很多人问到我那个自动生成NHibernate配置文件的工具如何使用,这里贴出一段代码,请大家自己看。
几点说明:
1.我这里生成的配置文件,假设和数据库字段一致,因此没有复杂的配置页面,生成后,大家可以根据自己的情况,简单修改一下配置文件。
2.由于该工具是在Nhibernate0.3的时候做的,后来一直没有时间更新,因此可能有部分功能在现在的NHibernate中得到了增强或者修改,不过生成配置的方法我一直使用,在0.7版本中也没有问题,是可以用的。
3.由于我的项目刚开始的时候,不存在NullableType,因此DateTime类型,使用的是判断是否小于1753这种方式,如果后来的人使用Nullabletype的话,请自行修改,如果要保留DateTime的话,我修改了Nhibernate中有关DateTime部分,请大家自己去改。
4.该工具在没有设置属性的时候,将每个属性都认为是普通属性,所以请大家设置One-TO-One,One-To-Many等属性


using System;
using System.Collections ;
using HR;
using ManHour;
using HR.Employee ;
using NHibernateAttribute;
using Market;
using Contract;
using Common;
using NHibernate;
using HR.OrganizationUnit ;

namespace Project
{
 [NHibernateClass]
 public class CProject:Common.CObject
 {
  ///ID 属性
  [NHibernateID]
  public Guid GuidProject
  {
   get
   {
    return this.mGuidProject ;
   }
   set
   {
    this.mGuidProject = value;
   }
  }
  ///普通属性
  public String Name
  {
   get
   {
    return this.mName ;
   }
   set
   {
    this.mName = value;
   }
  }
  [NHibernateOneToMany("Contract.CContract","MarketManage",KeyColumn="GuidAssignToProject")]
  public IList Contracts
  {
   get
   {
    return this.mContracts ;
   }
   set
   {
    this.mContracts = value;
   }
  } 
  
  [NHibernateManyToOne]
  public CManhour CustmerRebackManhour
  {
   get
   {
    return mCustmerRebackManhour;
   }
   set
   {
    mCustmerRebackManhour = value;
   }
  }

  [NHibernateOneToOne]
  public CEmployee  PM
  {
   get
   {
    return mPM;
   }
   set
   {
    mPM= value;
   }
  }
  [NHibernateManyToMany("Contract.CContract, Contract","GuidRole")]
  public IList Contracts
  {
   get
   {
    if(this.mContracts==null)
     this.mContracts=new ArrayList();
    return this.mContracts;
   }
   set
   {
    this.mContracts= value;
   }
  }
 }
}

转载于:https://www.cnblogs.com/caidehui/archive/2005/06/03/AutoGenerateGuide.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值