如果我的ClassMap包含一個引用(m => m.Store).Column(「StoreId」)並且我調用SchemaExport,那麼我的數據庫表包含兩個外鍵列,一個名爲'StoreId',一個名爲'Store_id 」。FluentNHibernate錯誤與ColumnName?
如果我離開Column()方法,那麼它只會創建'Store_id'列。
這是FluentNHibernate框架中的錯誤嗎? 我想只有'StoreId'列。
在此先感謝。
public class EntityMap<T> : ClassMap<T> where T : Entity
{
public EntityMap()
{
Id(m => m.Id);
}
}
public class StoreMap : EntityMap<Store>
{
public StoreMap()
{
Map(m => m.Name);
HasMany(m => m.Staff)
.Inverse()
.Cascade.All();
HasManyToMany(m => m.Catalogue)
.Table("Store_Product")
.Cascade.All();
}
}
public class EmployeeMap : EntityMap<Employee>
{
public EmployeeMap()
{
Map(m => m.LastName);
Map(m => m.FirstName);
References(m => m.Store).Column("StoreId");
}
}
public class ProductMap : EntityMap<Product>
{
public ProductMap()
{
Map(m => m.Name);
HasManyToMany(m => m.Stores)
.Table("Store_Product")
.Inverse()
.Cascade.All();
}
}
你應該張貼您的商店和其他類(即引用商店的)映射。 – 2011-12-28 06:07:56
謝謝你的回答。我已經用映射類更新了我的帖子。 – Powerslave 2011-12-28 10:00:52
您是否有任何其他鏈接到您的商店班級,而您並未在此發佈?也嘗試將您的商店地圖更改爲Id(m => m.Id).Column(「StoreId」) – 2011-12-28 13:23:58