ASP.NET MVC5를 EF6과 함께 사용하고 있으며 코드 첫 번째 방법을 사용하고 있습니다.Entity Framework 6 - 속성을 외래 키가 아닌 것으로 표시하는 방법
나는 내가 EF6은 외래 키가 아닙니다 말할 필요가 모델의 속성이 있습니다
public class LogEntry
{
public int ID { get; set; }
public int LogDayID { get; set; }
public int LogEntryTypeID { get; set; }
public int DepartmentID { get; set; }
public DateTime Clock { get; set; }
public string Text { get; set; }
public virtual LogDay LogDay { get; set; }
public virtual LogEntryType LogEntryType { get; set; }
public virtual Department Department { get; set; }
}
[NotMapped]
public class Department
{
public int ID { get; set; }
public string Title { get; set; }
}
모델학과가 가지고있는 [NotMapped이 모델은 데이터베이스에 저장되지 않아야한다.
LogEntry의 DepartmentID가 외래 키가 아니어야한다는 것을 EF6에서 인식했다고 생각했습니다.하지만 'Department'가 매핑되지 않았다는 오류가 발생합니다.
EDIT : LogEntry에서 DepartmentID를 제거하더라도 여전히 위의 오류가 발생합니다.
여기에 전체 오류 메시지입니다 :.
이"유형 'SupervisorLogWeb.Models.Department이'매핑되지 않은 유형이 명시 적으로이 방법 또는 NotMappedAttribute 데이터 주석을 무시 사용하여 제외되지 않았는지 확인합니다 확인합니다. 형식이 클래스로 정의 된, 기본 또는 일반 아니며 EntityObject에서 상속하지 않습니다. "
Department는 DBContext의 일부입니까? 만약 그렇다면 - 괜찮은 것은 아닙니다. – TGlatzer
T. 그 라저 - 그게 다야! 나는 DbContext에서 그것들을 제거하는 것을 완전히 잊었다. 감사. 어떻게 이것을 해결책으로 표시 할 수 있습니까? –
나는 이것을 답으로 썼다. – TGlatzer