2017-08-29 8 views
2

ServiceStack.OrmLiteは継承マッピングをサポートしていますか?ServiceStack.OrmLite継承マッピング

DevExpress XPO:Inheritance MappingまたはnHibernate Inheritanceに似ています。

例えば

(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」が存在しますが、動作しません。

答えて

0

いいえOrmLiteは継承マッピングをサポートしていません。 OrmLiteの中核的な期待は、各POCOが1:1をそれが表すRDBMSテーブルにマップすることです。あなたが必要があると思い異なる動作をする場合

  • NormalEvent

    > NormalEventテーブル
  • SuperDuppaEvent> SuperDuppaEventテーブル

:だから、デフォルトでは、あなたのクラスのそれぞれは、同じ名前を持つRDBMSのテーブルにマップされますPOCOクラス1:1をデータベースにどのようにレイアウトするかをマップします。例:

class NormalEvent 
{ 
    public string A { get; set; } 
    public int EventBaseId { get; set; } 
} 
関連する問題