1

에 대한 키를 정의 -, 데이타베이스에나는이 코드 줄에이 오류가이 EntityType

ReportRunnerEntities reportDB = new ReportRunnerEntities(); 

    public ActionResult Index() 
    { 
     **var types = reportDB.ReportTypes.ToList();** 
     return View(types); 
    } 

표 차 정의 키 설정 ID를 가지고있다.

내 모델은 - 나는 그것이 결코 데이터베이스에 도달하지있어 의심

-

namespace ReportRunner.Models 
{ 
    public partial class ReportRunnerEntities : DbContext 
    { 
     public DbSet<Reports> Report { get; set; } 
     public DbSet<ReportTypes> ReportTypes { get; set; } 
     public DbSet<Users> Users { get; set; } 
    } 
} 

namespace ReportRunner.Models 
{ 
    public partial class ReportTypes 
    { 
     public int ReportTypeId { get; set; } 
     public string Name { get; set; } 
     public string Description { get; set; } 
     public List<Reports> Reports { get; set; } 
    } 
} 

namespace ReportRunner.Models 
{ 
    public class Reports 
    { 
     public int ReportId { get; set; } 
     public int ReportTypeId { get; set; } 
     public int UserId { get; set; } 
     public string Title { get; set; } 
     public ReportTypes ReportType { get; set; } 
    } 

}

namespace ReportRunner.Models 
{ 
    public partial class Users 
    { 
     public int UserId { get; set; } //ArtistId 
     public string Name { get; set; } 
    } 
} 

여기 내 연결 문자열입니다. 열쇠가 데이터베이스에 설정되어 있다고 말했듯이.

내가 누락 된 항목이 있습니까?

+0

받고있는 오류를 게시하십시오. – Nix

+0

그리고 ReportTypeId, ReportId 및 UserId가 기본 키인 EF는 어디에 있습니까? –

답변

2

내가 그 변경해야 볼 몇 가지가 있습니다

  • ReportTypes이어야 리포트 유형

  • 공개 목록 보고서 {얻을; 세트; } 공개해야합니다. ICollection 보고서 {get; 세트; }

    당신은 무엇 하나가이처럼 ReportRunnerEntities 클래스의 생성자를 사용 입니다 EF 말할 필요가
  • 당신이 당신의 Web.config에 연결 문자열을 정의하는 경우 :


    namespace ReportRunner.Models 
    { 
        public partial class ReportRunnerEntities : DbContext 
        { 
         public ReportRunnerEntities : base("name=NameOfConnectionInWebConfig") 
         {} 
         public DbSet<Reports> Report { get; set; } 
         public DbSet<ReportTypes> ReportTypes { get; set; } 
         public DbSet<Users> Users { get; set; } 
        } 
    } 
    

당신은 여기에에 대한 자세한 내용을보실 수 있습니다 : http://blogs.msdn.com/b/adonet/archive/2011/01/27/using-dbcontext-in-ef-feature-ctp5-part-2-connections-and-models.aspx

.NET MVC와 EF Code First를 스택으로 사용할 계획이라면 저장소와 작업 단위 패턴을 사용하여 시작할 것입니다. 여기에 설정하는 방법에 대한 좋은 소식이 있습니다. Entity Framework 4 CTP 4/CTP 5 Generic Repository Pattern and Unit Testable

+0

폴 감사합니다. 매우 도움이되었습니다. – duckmike