0
我的數據庫中有兩個表,即超類和子類的主數據。然而,在我的申請,我有如何映射沒有表的父類的子類
abstract public class TierSettings
{
public Guid id { get; set; }
public string SomeTierSetting { get; set; }
}
abstract public class PricingStrategy : TierSettings
{
public string StrategySetting1 { get; set; }
public string StrategySetting2 { get; set; }
}
public class FirstPricingStrategy : PricingStrategy
{
public PricingStrategyType Strategy { get { return PricingStrategyType.Strategy1; } }
pubic Decimal Value { get; set; }
}
public class SecondPricingStrategy : PricingStrategy
{
public PricingStrategyType Strategy { get { return PricingStrategyType.Strategy2; } }
public Decimal Value { get; set; }
}
我的數據庫中兩個是會從底部子裝它的數據之間的中間階級...我只是有2個表:
TierSettings(
Id Guid Primary Key,
SomeTierSetting NVarChar(100)
)
PricingStrategies(
Id Guid Primary Key, Foreign Key References Parent(Id),
StrategySetting1 NVarChar(100),
StrategySetting2 NVarChar(100),
StrategyType Int,
Value Float
)
我m有問題映射我的hbm.xml文件中的關係。如果我將各個PricingStrategy類映射爲擴展層,則我無法訪問StrategySetting屬性...但我的PricingStrategy類不直接映射到數據庫。
我需要能夠查詢這樣:
var items = from items in session.Query<TierSettings>()
select item;
foreach(var item in items)
{
Console.WriteLine(item.Value);
}
我怎麼能據此構建我的映射文件?
謝謝,我已經看了這一點,但無論是我失去了一些東西,或者沒有考慮到這一事實我有一張桌子大致同化我的頂級抽象類。我無法將我所處的位置與需要的位置連接起來......你能否提供進一步的解釋? – BobTheBuilder