1

Entity Framework 5.0을 사용하여 데이터베이스를 처음으로 구현하려고하지만 어떻게 든 올바르게 처리하지 못하고 있습니다. 나는 다음과 같은 의문을 해소해야한다.Entity Framework 5.0 데이터베이스 첫 번째 방법

1.Ado.Net 엔터티 데이터 모델을 추가하면 DBContext 클래스 'Model.Context.cs'가 "Model.Context.tt"아래의 폴더에 자동으로 만들어집니다. DbContext Generator를 다시 추가해야합니까? (다른 사람들이 권장하는 것으로 찾았지만 이유를 찾을 수 없습니다!)

2. edmx 파일에서 컨트롤러를 스캐 폴딩하는 방법은 무엇입니까? 엔티티가 있다고 가정 해 봅시다. 엔티티 B와 일대일 관계가 많은 A (컨트롤러에 비계하고 싶습니다.),이 관계를 어디에서 정의할까요? edmx 파일의 자동 생성 모델 클래스에서 클래스 A & B를 만들고 다시 정의한 다음 모델 A를 스캐 폴딩합니까?

도움이 될 것입니다. 당신에게

+0

, 당신은 데이터베이스에서 테이블 간의 관계를 설정하고 EF가 생성됩니다 나머지는 모두 작동합니다. 스캐 폴딩은 현실을 볼 수 있습니다. 스카 폴딩 (scaffolding) 기능이있는 새로운 컨트롤러를 추가하면 모델 클래스와 VS에서 생성 된 Datacontext가 db로 설정됩니다. – jannagy02

+0

답장을 보내 주셔서 감사합니다. 예, 저는 VS에서 생성 된 것처럼 DataContext 클래스로 모델 클래스를 스캐 폴딩하려고했지만 위에서 언급 한 것처럼 관계 키가 유지되지 않습니다. 나는 코드를 공유하려고 노력할 것이다. 감사. –

답변

1

Abhatt 감사합니다

  1. 무엇 T4 템플릿을 당신을위한 클래스를 생성 않고 다른 T4 템플릿을 사용하기로 결정하지 않는 한, 그들을 계속해야합니다. 예를 들어, 데이터베이스를 디자인 할 수 있지만 코드를 먼저 사용하여 코드를 먼저 사용하도록 결정할 수 있습니다.이 경우 데이터베이스를 설계 한 후에 "EF 5.x DbContext Fluent Generator for C# "그리고 그 템플릿은 poco 클래스와 모든 매핑을 생성합니다.

  2. 컨트롤러를 추가 할 때마다 mvc는 스캐 폴딩을 사용하여 컨트롤러의 메서드 및 뷰를 만듭니다. 그러나 생성 방법을 더 많이 제어하려면 패키지 관리자 콘솔에서 MVCScaffolding을 설치할 수 있습니다. MVCScaffolding을 설치하면 t4 템플릿을 사용자 정의 할 수 있습니다. http://mvcscaffolding.codeplex.com/ 는 또 다른 좋은 일이있다 : 자세한 정보는 CodePlex에 체크 아웃 MVC 비계 프로젝트 먼저 데이터베이스와 http://www.codeproject.com/Articles/468777/Code-First-with-Entity-Framework-5-using-MVC4-and

+0

"C# 용 EF 5.x DbContext Fluent Generator"라는 t4 템플릿을 추가 한 후 다음과 같은 오류가 나타납니다. - ** 'MyApp.ModelEntities'유형에 'EntityName'** 정의가 이미 있습니다. 이 문제를 해결하는 방법 & 내가 왜 이것을 얻는가? –

+0

이전에 생성 된 클래스를 제거한 다음 프로세스를 다시 실행해야합니다. – Ehsan

관련 문제