我刚刚开始使用 Entity 框架,并创建了我的存储库和上下文类和接口,并定义了我的 POCO,我现在正试图了解这些约定是如何工作的,但遇到了困难,到目前为止还无法这样做。
我有以下 2 个 POCO 课程:
游戏周刊
public class Gameweek
{
[Key][Required]
public int GameweekID { get; set; }
[Required]
public DateTime StartDate { get; set; }
[Required]
public DateTime Deadline { get; set; }
[Required]
public int NumberFixtures { get; set; }
public virtual ICollection<Fixture> Fixtures { get; set; }
public virtual ICollection<Result> Results { get; set; }
}
夹具
public class Fixture
{
[Key][Required]
public int FixtureID { get; set; }
[Required]
public int GameweekID { get; set; }
[Required]
public string HomeTeam { get; set; }
[Required]
public string AwayTeam { get; set; }
public virtual Result Result { get; set; }
}
结果
public class Result
{
[Key][Required]
public int FixtureID { get; set; }
[Required]
public int HomeGoals { get; set; }
[Required]
public int AwayGoals { get; set; }
}
在我的模型中,Gameweek可能包含 0-20个固定装置。比赛周中的每一场比赛都有一个结果。
我是否使用类和以下约定正确建模:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove < PluralizingTableNameConvention>();
//Table relationships defined here
modelBuilder.Entity<Gameweek>()
.HasMany(g => g.Fixtures);
modelBuilder.Entity<Fixture>()
.HasOptional(f => f.Result);
}
任何提示将非常感谢。