2
我想從我的消費者的實體類的隱藏的主鍵Id屬性:流利的NHibernate自動映射的私人/保護財產,作爲標識
public class A
{
protected virtual int Id { get; set; }
public virtual string Name { get; set; }
... etc ...
}
使Id屬性的保護不符合標準的自動映射工作,它無法找到它。
我試圖覆蓋DefaultAutomappingConfiguration.IsId(...)
但這隻會被公衆成員回電。
我如何能得到這個,而無需使用特定ClassMap<A>
S代表每種類型的工作,如記錄在這裏: http://wiki.fluentnhibernate.org/Fluent_mapping_private_properties
編輯: 我想改變自動映射公約查找名稱爲「任何財產身份證「,而不僅僅是公共財產。我不希望使用ClassMap<T>
每個類的基礎配置,如下所示:
public ClassAMap: ClassMap<A>
{
public ClassAMap()
{
Id(Reveal.Member<ClassAMap>("Id"));
}
}
public ClassBMap: ClassMap<B>
{
public ClassBMap()
{
Id(Reveal.Member<ClassBMap>("Id"));
}
}
... etc ...
我是新來的流利NHibernate,所以糾正我,如果我錯了,但你的第一個建議,使用'IIdConvention',不是'用於設置您的屬性如何映射到數據庫列的約定?它與識別這些屬性開始無關? 第二個選項可以正常工作,但正如我在問題中所說的,我不想使用每類'ClassMap'設置,我想要一個適用於所有類的約定驅動方法。 –
Tyson
2012-02-22 14:09:33
我以爲你可以透露會員實施IIdConvention – Yaman 2012-02-23 14:50:43
請告訴我怎麼... – Tyson 2012-02-23 14:57:42