Fluent NHibernate 复合映射 <long, string>
Posted
技术标签:
【中文标题】Fluent NHibernate 复合映射 <long, string>【英文标题】:Fluent NHibernate Composite Mapping <long, string> 【发布时间】:2013-12-01 22:22:14 【问题描述】:我在映射具有主键的特定表时遇到问题。 假设我有这张桌子:
CREATE TABLE ALERT_EMAIL
(
IDALERT NUMBER(10, 0) NOT NULL,
EMAIL VARCHAR2(100 BYTE) NOT NULL,
CONSTRAINT ALERT_EMAIL_PK PRIMARY KEY ( IDALERT , EMAIL ) ENABLE
)
这是我的映射:
public class AlertEmailMap : ClassMap<AlertEmail>
public AlertEmailMap()
Schema("XXX");
Table("ALERT_EMAIL");
CompositeId().KeyReference(x => x.Alert, "IDALERT").KeyReference(x => x.Email, "EMAIL");
我收到此错误:“ALERT_EMAIL 表中的关联引用了未映射的类:System.String”
是因为我的 CompositeId 中有一个字符串吗? 如何正确映射该表?
谢谢。
【问题讨论】:
【参考方案1】:这封电子邮件不涉及其他课程。将其映射为简单属性
CompositeId()
.KeyReference(x => x.Alert, "IDALERT")
.KeyProperty(x => x.Email, "EMAIL");
【讨论】:
以上是关于Fluent NHibernate 复合映射 <long, string>的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Fluent NHibernate 中将一对一关系映射为复合键的一部分