2010-06-29 2 views
0

에 대한 이름을 지정 내가 엔티티 프레임 워크 4에서 코드를 먼저 사용하고, 엔티티 프레임 워크의 기능 CTP 3어떻게 엔티티 구성

는 엔티티 구성의 이름을 지정할 수 있습니까? 실제로 테이블 이름을 'xxxSet'에서 선택한 이름으로 변경합니까?

+1

이 기능은 CTP 2에 도입되었습니다. ADO.NET 팀 블로그에서 수행 할 수 있다는 점을 제외하고는 어디에도 설명서가 표시되지 않습니다. –

답변

1

발견 된 the documentation. , 다시

public class BloggingModel : ObjectContext 
{ 
    public BloggingModel(EntityConnection connection) 
     : base(connection) 
    { 
     DefaultContainerName = "BloggingModel"; 
    } 

    public IObjectSet<User> Users // ObjectSet name -- you can call it whatever you want 
    { 
     get { return base.CreateObjectSet<User>(); } 
    } 
} 

class UserConfiguration : EntityConfiguration<User> 
{ 
    public UserConfiguration() 
    { 
     Property(u => u.Password).HasMaxLength(15).IsRequired(); 

     Relationship(u => u.AuthoredPosts).FromProperty(p => p.Author); 
     Relationship(u => u.PostedPosts).FromProperty(p => p.Poster); 

     MapHierarchy( 
      u => EntityMap.Row( 
       EntityMap.Column(u.ID, "uid"), 
       EntityMap.Column(u.Password) 
      ) 
     ).ToTable("Users"); // DB table name -- again, anything you like 
    } 
} 

전체 정보 링크 된 게시물을 참조 : 당신은 같은 일을하고 싶다.

+0

그래, 전에 이것을 보아왔다. 하지만 것은 MapHierarchy를 사용하지 않는다는 것입니다. 문서에. 감사 – Jeroen

0

Visual Studio (쉬운 방법) 또는 .edmx 파일 (내가하는 일을 알고있는 경우)에서 디자이너로 변경할 수 있습니다. 또한 약 2 개월 전에 릴리스 된 .NET 4.0 및 EF4로 업데이트하십시오. CTP (무료로 사용할 수있는 Visual C# 2010 또는 Web Developer 2010의 빠른 버전이 있음)를 잊어 버리십시오. 이 버전의 디자이너는 CTP보다 "완벽"하며 엔티티의 이름을 자동으로 지정하는 것이 더 바람직합니다 (복수형).

이것은 EF와 관련이 있으며 Linq2Sql과 관련이 없습니다 (EF와 유사합니다). 그러나 정확하게 이름을 변경하는 방법을 알지 못합니다. 물론 확실한 방법이 있어야하고 꽤 많이 있어야합니다. EF와 동일).

건배!

+0

내 게시물을 다시 읽으십시오. 추가 정보를 추가했습니다. 저는 Entity Framework 기능 CTP3 만 사용하여 코드 우선 디자이너를 사용하지 않습니다. – Jeroen

+0

오해에 대해 유감스럽게 생각합니다 ... 나의 나쁜 여기! 나는 아직 EF와 코드를 처음 사용하지 않았기 때문에 (DB 첫 번째 만) 나는 이것에 대한 답을 모른다. – Padel

관련 문제