我正在尝试使用 CompositeId 映射到遗留系统。源数据库有一个复合主键,所以我不能使用正常的 this.Id 映射。
这是我尝试映射它:
public PriorityListPartMap()
{
this.Schema("EngSchedule");
this.Table("vPriorityListPart");
this.CompositeId().KeyProperty(x => x.AssemblyPartNumber).KeyProperty(x => x.PartNumber);
this.Map(x => x.CurrentDueDate);
this.Map(x => x.OrderLine);
this.Map(x => x.OrderNumber);
this.Map(x => x.PartDescription);
this.Map(x => x.ProductCode);
this.Map(x => x.Revision);
}
当我尝试创建会话工厂时,此映射会导致错误:无法编译映射文档:(XmlDocument)
我尝试删除 CompositeId 映射并将其替换为:
this.Id(x => x.AssemblyPartNumber).GeneratedBy.Assigned();
错误随着该映射而消失,但我不能真正使用它,因为 AssemblyPartNumber 不是唯一的。
是否有不同的方法可以映射到具有复合主键的表?
谢谢,
马修麦克法兰