これはv.717(IComponentConvention)で機能します:
public void Apply(IComponentInstance instance)
{
if (instance.Type == typeof(EmailAddress))
{
instance.Properties.First(property => property.Name == "FullAddress")).Column(instance.Name);
}
}
上記の規則を使用して、データベース列の名前をコンポーネントプロパティの名前にマップできます。しかし、v.727では、hbmは突然次のようになります。
<component name="DefaultMailAddressForAlerts" class="EmailAddress">
<property name="FullAddress" type="System.String">
<column name="DefaultMailAddressForAlertsDefaultMailAddressForAlerts"/>
</property>
</component>
データベースの列名をコンポーネントプロパティの名前x2にします。流暢なnhibernateのv727でコンポーネント規則を作成する新しい方法はありますか?