using NHibernate.Mapping.ByCode; using NHibernate.Mapping.ByCode.Conformist; using System; using Tanshu.Accounts.Entities.Auth; namespace Tanshu.Accounts.Entities { public class Reprint { public virtual Guid ReprintID { get; set; } public virtual User User { get; set; } protected DateTime _date; public virtual DateTime Date { get { return _date; } } public virtual Voucher Voucher { get; set; } } public class ReprintMap : ClassMapping { public ReprintMap() { Table("Reprints"); Schema("dbo"); Lazy(true); SqlInsert(@"exec ReprintInsert ?,?,?"); Id(x => x.ReprintID, map => map.Generator(Generators.GuidComb)); Property(x => x.Date, map => { map.NotNullable(true); map.Generated(PropertyGeneration.Insert); map.Access(Accessor.NoSetter); }); ManyToOne(x => x.User, map => { map.Column("UserID"); map.NotNullable(true); map.Cascade(Cascade.None); }); ManyToOne(x => x.Voucher, map => { map.Column("VoucherID"); map.NotNullable(true); map.Cascade(Cascade.None); }); } } }