2010-06-30 2 views
0

런타임 중에 클래스 X가 있고 Entity Framework 4를 사용하여 여러 테이블을 만들 수 있습니까?런타임에 1 클래스에서 여러 테이블 만들기

예를 들어 클래스 Item. ItemA 테이블과 ItemB 테이블을 생성하고 싶습니다. 이 작업을 런타임에 수행 할 수 있습니까?

답변

1

글쎄, 실제로 에서 하나의 EntityConfiguration 여러 테이블을 만들 수 있습니다. 하지만 왜 그렇게 할 수 있습니까?

public class Item 
{ 
    public int Id { get; set; } 
    public string Name { get; set; } 
} 

public class ItemConfig : EntityConfiguration<Item> 
{ 
    public ItemConfig() 
    { 
     Property(it => it.Id).IsIdentity(); 

     Property(it => it.Name).IsUnicode().IsRequired().HasMaxLength(100); 

     MapSingleType(c => new { c.Id, c.Name }).ToTable("dbo.ItemA"); 
     MapSingleType(c => new { c.Id, c.Name }).ToTable("dbo.ItemB"); 
    } 
} 
+0

역사에 대한 별도의 테이블? 'Client'테이블과 'ClientHistory'테이블을 가정하십시오. 모든 편집은 히스토리 테이블에 항목을 가져옵니다. 두 테이블은 거의 동일합니다. – Jeroen

+0

제공된 솔루션이이 경우에 유용하다고 생각하지 않습니다. CreateDatabase()는 다른 테이블을 만들지 만 그러한 매핑을 사용하려고하지 않았습니다. –

관련 문제