작은 게임 리뷰 웹 사이트를 시뮬레이트하는 asp.NET MVC4에서 미니 프로젝트를 만들려고했습니다. 멋진 도구는 없으며 도구와 언어의 여러 측면을 다루기를 원했습니다.asp.Net 두 개의 데이터베이스 엔티티가있는 MVC4가 서로 참조합니다.
현재 Genres를 ID에 연결하는 데이터베이스를 만들려고 했으므로 Game 데이터베이스 세트를 만들 때 관련 장르별로 게임을 참조 할 수 있습니다. 나는 모델을 만들기 위해 코드 첫 번째 접근법을 사용하고 있었지만 가상 컬렉션에 저장된 장르를 올바르게 참조하는 방법을 잘 모르겠습니다. 게임을 기반으로하는 장르 나 테이블을 기반으로 테이블을 만들면 참조를 올바르게 나는이 MVC 접근법을 배워서 내 용어가 꺼져 있으면 사과한다.
public class GamingModels : DbContext
{
public DbSet<Games> GameDb { get; set; }
public DbSet<Genre> GenreDb { get; set; }
public GamingModels()
: base("DefaultConnection")
{ }
public class Games {
public int ID { get; set; }
public string Title { get; set; }
public string Summary { get; set;}
public int Rating { get; set; }
public virtual ICollection<Genres> Genres { get; set; }
}
public class Genre {
public int ID { get; set; }
public string Name { get; set; }
public virtual ICollection<Games> Games { get; set; }
}
}
[답을 쓰기 시작 그러나 이것은 더] [1] [1] : http://stackoverflow.com/questions/7050404/create-code-first-many-to-many - 추가 필드 - 연관 테이블 포함 – Nogusta
Model First 접근 방식을 고려할 수도 있습니다. 코드 첫 번째는 데이터베이스 스키마를 포함하여 모든 "소스 코드"를 한 곳에 저장하는 것이 좋지만 데이터베이스를 만들 때 사소한 많은 것들은 처음에는 코드 첫 번째 접근법으로 복잡하고 심지어 비밀스럽게됩니다. 데이터베이스를 만들고 Entity Framework를 사용하여 DAL 레이어를 렌더링하고 이동합니다. 프로덕션 환경으로 이동해야하는 개발 데이터베이스 변경 사항을 추적하려면 Red Gates Sql Compare 도구를 사용하는 것이 좋습니다. –