0

У меня есть класс Project и класс Case, который наследуется от Project. При наличии списка Projects мы можем позже решить сделать Case из выбранных Project. Как я могу это достичь?Как преобразовать класс в унаследованный класс при использовании ActiveRecord

Проект:

[ActiveRecord (Table = "projects", Lazy = true), JoinedBase] 
public class Project : ActiveRecordValidationBase<Project> 
{ 
     private int _id; 
     [PrimaryKey(PrimaryKeyType.Identity, "id")] 
     public virtual int Id 
     { 
      get { return _id; } 
      set { _id = value; } 
     } 
} 

Корпус:

[ActiveRecord(Table = "cases", Lazy = true)] 
    public class Case : Project 
    { 
     private int _caseId; 
     [JoinedKey("case_id")] 
     public virtual int CaseId 
     { 
      get { return _caseId; } 
      set { _caseId = value; } 
     } 
    } 

Я надеюсь, что моя тема и проблема ясно :)

ответ

1

См NHibernate - Changing sub-types, это говорит о дискриминаторах, но в принципе ответа то же самое: либо избегать этой ситуации путем рефакторинга, либо взломать его с помощью необработанного SQL.