我正在映射以下实体:
public class PersonEntity
{
public virtual string PersonId { get; set; }
public virtual String Salutation { get; set; }
public virtual String FirstName { get; set; }
public virtual String LastName { get; set; }
public virtual DateTime Birthdate { get; set; }
}
public class PersonMap : ClassMapping<PersonEntity>
{
public PersonMap()
{
//ComponentAsId(i => i.Key, map => map.Property(p => p.PersonId, m => m.Type(NHibernateUtil.AnsiString)));
Id(i => i.PersonId, map => map.Type(???)));
Property(i => i.Salutation);
Property(i => i.FirstName);
Property(i => i.LastName);
Property(i => i.Birthdate);
}
}
正如您在注释掉的代码中看到的那样,当使用组件作为 Id 时,我可以使用 NHibernateUtil 将类型设置为 AnsiString。但是我无法弄清楚在普通的 Id 映射中要做什么。
我试过使用new NHibernate.Type.AnsiStringType()
,但这抱怨没有为它定义构造函数。
有什么想法吗?