映射弱实体
本文关键字:实体 映射 | 更新日期: 2023-09-27 18:26:48
我得到了以下弱实体(没有WikiPage就不可能存在):
CREATE TABLE WikiPageTree
(
PageId int NOT NULL,
Title nvarchar(1000) NOT NULL,
Lineage nvarchar(1000) NOT NULL,
)
其中PageId
是对Page.Id
的FK。这是一个1-1的映射。
映射应该是什么样子?我不知道如何指定fluent nhibernate所需的Id
映射。
根据@WillDaBest的回答,我尝试了以下内容:
public class WikiPageTreeMap : ClassMap<WikiPageTreeNode>
{
public WikiPageTreeMap()
{
Table("WikiPageTree");
LazyLoad();
Id(Reveal.Member<WikiPageTreeNode>("PageId")).GeneratedBy.Foreign("Page");
HasOne(x=>x.Page).Constrained().ForeignKey();
//Id(x => x.Page).Column("PageId");
//References(x => x.Page).Column("PageId");
Map(x => x.Path).Column("Title").Not.Nullable().Length(1000);
Map(x => x.Lineage).Column("Lineage").Not.Nullable().Length(1000);
}
}
但它给了我错误
{"必须声明标量变量''"@p0''"。"}
这可能有助于在Fluent nHibernate中映射一对一关系:http://brunoreis.com/tech/fluent-nhibernate-hasone-how-implement-one-to-one-relationship/