[英]ServiceStack.OrmLite inheritance mapping
ServiceStack.OrmLite是否支持继承映射?
像DevExpress XPO: 继承映射或nHibernate 继承 。
例如(c#):
public abstract class EventBase
{
public string Name { get;set; }
}
public class NormalEvent: EventBase
{
public string A { get;set; }
}
public class SuperDuppaEvent:EventBase
{
public string B { get;set; }
}
在数据库中,存在一个表“ EventBase”,其中所有列/属性均来自“ NormalEvent”,“ SuperDuppaEvent”和“ EventBase”。
文档中存在“ AliasAttribute”,但它不起作用。
没有OrmLite不支持继承映射。 OrmLite的核心期望是每个POCO与其所代表的RDBMS表以1:1映射。 因此,默认情况下,您的每个类都将映射到具有相同名称的RDBMS表:
NormalEvent
> NormalEvent表 SuperDuppaEvent
> SuperDuppaEvent表 如果您想要不同的行为,则需要将POCO类1:1映射到数据库中的布局方式,例如:
class NormalEvent
{
public string A { get; set; }
public int EventBaseId { get; set; }
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.