0
應使用哪種約定來更改CompositeId().KeyReference(x=>x.Key,/*THIS PART*/)
方法的列名稱?我在FluentNHibernate.Conventions中使用了所有可用的約定,但仍未找到答案。FluentNHibernate:只是另一個映射問題
在此先感謝
應使用哪種約定來更改CompositeId().KeyReference(x=>x.Key,/*THIS PART*/)
方法的列名稱?我在FluentNHibernate.Conventions中使用了所有可用的約定,但仍未找到答案。FluentNHibernate:只是另一個映射問題
在此先感謝
仍然不可能現在(FNH 1.2),但與一些反射魔法
class CompositeKeyConvention : ICompositeIdentityConvention
{
public void Apply(ICompositeIdentityInstance instance)
{
var columninspector = instance.KeyManyToOnes.First(k => k.Name == "Key").Columns.First();
var columnmapping = (ColumnMapping)columninspector.GetType().GetField("mapping", BindingFlags.GetField | BindingFlags.Instance | BindingFlags.NonPublic).GetValue(columninspector);
columnmapping.Name = "mycolumnname";
}
}
1.2版?我正在使用1.3版!好,謝謝。 – Sadegh
如何更改類型?我試圖讓枚舉使用int。 .KeyProperty(x => x.EnumKey,x => x.ColumnName(「EnumKey」)。Type(typeof(EnumKeyType)))< - 我想約定。 – BradLaney