0
当您尝试创建从使用复合键,我得到错误“的序列包含多个匹配的元素”序列包含一个以上的匹配元素 - 复合键
一个一对多的关系请帮帮我!
modelBuilder.Entity<PracticePilotScoringInfo>()
.HasKey(info => new { info.DriverName, info.Control,info.VehicleClass, info.ScoringInfoId });
modelBuilder.Entity<PracticeScoringInfo>()
.HasKey(info => info.Id)
.HasMany(info => info.PracticePilotScoringInfos)
.WithRequired(info => info.ScoringInfo)
.HasForeignKey(info => new { info.DriverName, info.Control, info.VehicleClass, info.ScoringInfoId });
public class PracticeScoringInfo : ScoringInfo
{
public int GrandPrixId { get; set; }
public GrandPrix GrandPrix { get; set; }
public virtual ICollection<PracticePilotScoringInfo> PracticePilotScoringInfos { get; set; }
}
public class PracticePilotScoringInfo : PilotScoringInfo
{
public string DriverName { get; set; }
public ControlType Control { get; set; }
public string VehicleClass { get; set; }
public Guid ScoringInfoId { get; set; }
public virtual PracticeScoringInfo ScoringInfo { get; set; }
}
public Configuration()
{
AutomaticMigrationsEnabled = true;
AutomaticMigrationDataLossAllowed = true;
}
“序列包含多于一个匹配元件”通常是一个例外LINQ通过'单()'或'的SingleOrDefault()'方法抛出。你在什么地方使用它?更新数据库时发生 – haim770
错误。 PM> Update-Database -Verbose 使用StartUp项目'Vmso'。 使用NuGet项目'Vmso'。 这是一个“-Verbose”,用于SQL语言环境,可以在任何其他应用程序中使用。 System.InvalidOperationException:Последовательностьсодержитболееодногосоответствующегоэлемента вSystem.Linq.Enumerable.SingleOrDefault [TSource](IEnumerable'1源,Func'2谓词) –
安置自己的数据库的迁移代码,以及,然后。 – haim770