У меня есть две таблицы, скажем, магазин и отдел.
ShopTable
ShopId
ShopName
DepartmentTable
DepartmentId
ShopId
Name
Type
Хорошо, теперь я сопоставляю магазинный класс с классом магазина
public class Shop
{
public virtual int ShopId {get; set;}
public virtual string ShopName {get; set;}
public virtual Department Toys { get; set; }
public virtual Department Hardware { get; set; }
public virtual Department Food { get; set; }
}
public class Department
{
public virtual int DepartmentId { get; set; }
public virtual int ShopId { get; set; }
public virtual string Name { get; set; }
public virtual DepartmentType Type { get; set; }
}
Как мне сопоставить оборудование и продукты для игрушек?
public class ShopMap : ClassMap<Shop>
{
Id(x => x.ShopId);
Map(x=> x.ShopName);
// How do I map these according to the DepartmentType enum?
Map(x=> x.Toys);
Map(x=> x.Hardware);
Map(x=> x.Food);
}
public class DepartmentMap : ClassMap<Department>
{
Id(x => x.DepartmentId);
Map(x=> x.ShopId);
Map(x=> x.Name);
Map(x=> x.Type);
}