我在映射具有主键的特定表时遇到问题。 假设我有这张表:
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中有一个字符串吗? 如何正确映射该表?
感谢。
答案 0 :(得分:2)
电子邮件不是对另一个类的引用。将其映射为简单属性
CompositeId()
.KeyReference(x => x.Alert, "IDALERT")
.KeyProperty(x => x.Email, "EMAIL");