40 lines
1.6 KiB
C#
40 lines
1.6 KiB
C#
using FluentNHibernate.Mapping;
|
|
using GeneralApi.Core.Common;
|
|
using Taloyhtio.GeneralApi.Core.Common;
|
|
using Taloyhtio.GeneralApi.Core.Entities;
|
|
|
|
namespace GeneralApi.Core.Infrastructure.DataAccess.Mappings
|
|
{
|
|
public class BoardMemberMap : ClassMap<BoardMember>
|
|
{
|
|
public BoardMemberMap()
|
|
{
|
|
Table("[BoardMember]");
|
|
Id(x => x.Id);
|
|
Map(x => x.FirstName)
|
|
.Length(Constants.DataAccess.BoardMember.FIRST_NAME_MAX_LENGTH)
|
|
.Not.Nullable()
|
|
.UniqueKey("UQ_BoardMember"); // the same for FirstName, LastName, COndoId
|
|
|
|
Map(x => x.LastName)
|
|
.Length(Constants.DataAccess.BoardMember.LAST_NAME_MAX_LENGTH)
|
|
.Not.Nullable()
|
|
.UniqueKey("UQ_BoardMember");
|
|
|
|
Map(x => x.Address).Length(Constants.DataAccess.BoardMember.ADDRESS_MAX_LENGTH);
|
|
Map(x => x.Postcode).Length(Constants.DataAccess.BoardMember.POSTCODE_MAX_LENGTH);
|
|
Map(x => x.Town).Length(Constants.DataAccess.BoardMember.TOWN_MAX_LENGTH);
|
|
Map(x => x.FlatNumber).Length(Constants.DataAccess.BoardMember.FLAT_NUMBER_MAX_LENGTH);
|
|
Map(x => x.Email).Length(Constants.DataAccess.BoardMember.EMAIL_MAX_LENGTH);
|
|
Map(x => x.Mobile).Length(Constants.DataAccess.BoardMember.MOBILE_MAX_LENGTH);
|
|
Map(x => x.LastUpdated);
|
|
Map(x => x.Deactivated).Not.Nullable();
|
|
|
|
References(x => x.Condo)
|
|
.Column("CondoId")
|
|
.Not.Nullable()
|
|
.UniqueKey("UQ_BoardMember"); // the same for FirstName, LastName, COndoId
|
|
}
|
|
}
|
|
}
|