3

TableAとArchivedTableAの2つのテーブルがあります。基本的にこれらは同一のテーブルですが、TableAの行はArchivedTableに移動されてアーカイブされます。

これらの2つのクラスが同じエンティティから継承するように、これをEntityFrameworkで表現するにはどうすればよいですか。POCOを使用しています。

4

2 に答える 2

1

この状況では継承を使用しないことをお勧めします。TableAからArchiveTableAにレコードを「アーカイブ」する場合でも、そのレコードはベーステーブルにあります。

Julie Lermanは、継承の落とし穴のいくつかについての優れたMSDN記事を公開しています。 http://msdn.microsoft.com/en-us/magazine/jj553510.aspx

于 2012-11-21T17:10:27.023 に答える
0

たとえば、共通のプロパティを持つ基本クラスを作成します

     public class BaseEntity
    {
         public virtual int Id {get;set;}
         public DateTime CreatedOn  {get;set;}
    }

次に、次のような共通の列があるため、この基本クラスから継承するPOCOオブジェクトを作成します。

public class TableA : BaseEntity
{
   public string NewName {get;set;}
}

public class ArchivedTableA : BaseEntity
{
   public string Name {get;set;}
}

あなたは明らかにこれの上にEF配管の形でDbSetマッピングなどを行う必要があります...

于 2012-11-21T16:50:28.073 に答える