我有一個功能NHibernate項目我的工作,並做一些測試我遇到了一個很奇怪的錯誤:奇誤差建築FluentNH配置
The entity '<>c__DisplayClass3' doesn't have an Id mapped. Use the Id method to map your identity property. For example: Id(x => x.Id).
報告的相關實體是:
{Name = "<>c__DisplayClass3" FullName = "TPLLCPortal.Domain.Account+<>c__DisplayClass3"}
我沒有叫任何DisplayClass
類,但我有一個Account
實體。我使用的是這樣的一個主鍵約定:
public class PrimaryKeyConvention : IIdConvention
{
public void Apply(IIdentityInstance instance)
{
instance.GeneratedBy.GuidComb();
}
}
我Account
類從EntityBase
類聲明的ID爲繼承:
/// <summary>
/// Gets or sets the id.
/// </summary>
/// <value>The id.</value>
public virtual Guid Id { get; protected internal set; }
我相信,我設置正確配置配置以及約定正在被拾取,但以防萬一我添加了覆蓋並專門映射Account
類的ID。沒有骰子。
任何想法是怎麼回事?
我在NHibernate 3.3.1.4000上使用FNH 1.3.0.733(都裝載了NuGet)。