public class Team
{
public Team()
{
TeamSchemes = new HashSet<Scheme>();
TeamUsers = new HashSet<PLUser>();
}
public int ID { get; set; }
public string Name { get; set; }
[ForeignKey("Office")]
public int OfficeID { get; set;}
public virtual Office Office { get; set; }
[ForeignKey("TeamLeader")]
public int TeamLeaderID { get; set; }
public virtual PLUser TeamLeader { get; set; }
public virtual ICollection<Scheme> TeamSchemes { get; set; }
public virtual ICollection<PLUser> TeamUsers {get;set;}
}
나는 팀 객체와 사용자 객체를 가지고 있습니다. 내가 원하는어떻게 수정합니까 : System.Data.SqlClient.SqlException : 잘못된 열 이름 'TeamID'
관계는 다음과 같습니다 팀은 TeamLeader (사용자) 팀이 팀 여기
될 수있는 많은 사용자를 가지고있다하는 것은 내가 이러한 관계에 대한 내 사용자 개체에있는 것입니다
내가 어딘가에에서 Team_ID라는 여분의 열을 얻고 있었다 codeFirst 마이그레이션을 실행할 때
[ForeignKey("Team")]
public int? TeamID { get; set; }
public virtual Team Team { get; set; }
public virtual ICollection<Team> TeamsLeading { get; set; }
그러나 내가 명시 적으로 같은 모델 빌더 내 관계를 언급 :
modelBuilder.Entity<Team>().HasRequired(x => x.TeamLeader).WithMany(u=>u.TeamsLeading).HasForeignKey(t=>t.TeamLeaderID);
modelBuilder.Entity<PLUser>().HasOptional(x => x.Team).WithMany(t=>t.TeamUsers).HasForeignKey(x => x.TeamID);
modelBuilder.Entity<PLUser>().HasMany(u => u.TeamsLeading).WithRequired(t => t.TeamLeader);
마이그레이션 코드가 성공적으로 실행되어 의도 한 결과를 나타내는 것처럼 보입니다. 그러나 응용 프로그램을 실행할 때 다음 오류가 발생하고 응용 프로그램이 실행되지 않습니다.
System.Data.SqlClient.SqlException : 'TeamID'열 이름이 잘못되었습니다.
모델의 관계에 어떤 도움/고정 문제
문제를 해결 한 것으로 보이는 스티브에게 감사드립니다. –