1

기본 클래스 (BaseEntity)에서 파생시키기 위해 엔티티 프레임 워크 데이터베이스를 먼저 자동 생성 클래스 (.tt)로 변경할 수 있습니까? 엔티티 프레임 워크 데이터베이스를 처음으로 자동 생성 된 도메인 클래스

내 도메인 클래스의 일부

두 가지 속성 (CreateDateTime & CreateUserId)을 가지고 있으며, 나는 다음과 같은 코드() SaveChanges를하기 전에 자동으로이 속성을 설정하려면 :

그 부분 클래스의 상단에
private void AuditFields() 
{ 
    foreach (var entry in this.ChangeTracker.Entries<BaseEntity>().Where(x => x.State == System.Data.EntityState.Added)) 
    { 
     entry.CreateDateTime = DateTime.Now; 
     entry.CreateUserId = CurrentUser.Id; 
    } 
} 

내가 본 다음 경고 :

이 파일을 수동으로 변경하면 응용 프로그램에서 예기치 않은 동작이 발생할 수 있습니다.

답변

1

먼저 코드를 작성 하시겠습니까? 다시 재생해야합니까?

해당 질문에 대한 답변을 알고 계시면 적어도 영향을 고려해야합니다.
이 당신에게 당신이 그렇지 않으면

시작할 수있는 모델을 얻을 수 Reverse engineer code first to existing DB

참조 : 부분 클래스의 접근 방식이 도움이 될 수 있습니다. 지난 번에 (EF4) 시도한 코드는 부분적으로 발생했습니다. 당신은 생성 된 클래스를 혼자두고 당신의 대답을 부분 부분을

public partial class MyGeneratedClass : SexyBaseObject 
{ 
//... 
} 
+0

감사를 추가하지만 난에 일하고 있어요 프로젝트에 코드 첫 번째 방법을 사용하지 못할. –

+1

내가 아는 한, EF의 생성 클래스는 부분 클래스로 작성되므로 메타 데이터 및 기타 사항을 추가 할 수 있으므로 코드를 먼저 사용하든 사용하지 않아도 상관 없습니다. – anaximander

관련 문제