我想(通过 Fluent NHibernate)设置要生成的 Id:已分配。映射的 Id 是包含在实体内部组件中的属性,如下所示:
public class Group
{
public Group()
{
}
public Group(GroupIdentifier identifier)
{
GroupIdentifier = identifier;
}
[DataMember]
public virtual GroupIdentifier GroupIdentifier { get; set; }
[DataMember]
public virtual IList<X> Objects { get; set; }
}
public class GroupIdentifier
{
protected ProtectionGroupIdentifier()
{
}
[DataMember]
public virtual Guid GroupGuid
{ get; set; }
}
我使用以下代码来定义实体 ID:
.Override<Group>(obj => obj.Id(x => x.GroupIdentifier.GroupGuid).GeneratedBy.Assigned())
当我尝试保存实体时,出现以下错误:抛出异常。NHibernate.PropertyNotFoundException:NHibernate.PropertyNotFoundException:在类中找不到属性“GroupGuid”的吸气剂...
如果我将 GroupGuid 移动到 Group Entity 并设置 Id - 它正在工作。但我在 GroupIdentifier 组件中需要它。请指教。