【发布时间】:2014-12-20 14:03:33
【问题描述】:
在我的种子方法中插入项目时出现错误
public class ContexInitializerDropAlways : DropCreateDatabaseAlways<DomainDbContext>
{
protected override void Seed(DomainDbContext context)
{
base.Seed(context);
List<Tour> tours = new List<Tour>
{
new Tour
{
Price = 800.00m,
StartedOn = DateTime.Now,
EndedOn = DateTime.Now.AddMonths(1),
Nights = 15
},
new Tour
{
Price = 650.00m,
StartedOn = DateTime.Now.AddDays(10),
EndedOn = DateTime.Now.AddMonths(2),
Nights = 10
},
new Tour
{
Price = 350m,
StartedOn = DateTime.Now.AddDays(5),
EndedOn = DateTime.Now.AddDays(5),
Nights = 5
}
};
List<Country> countries = new List<Country>
{
new Country
{
Name = "Австрия"
},
new Country
{
Name = "Греция"
},
new Country
{
Name = "Турция"
}
};
countries[0].Tours.Add(tours[0]);
countries[1].Tours.Add(tours[1]);
countries[2].Tours.Add(tours[2]);
context.Countries.AddRange(countries);
context.SaveChanges();
}
}
错误:违反主键约束“PK_dbo.Countries”。不能 在对象“dbo.Countries”中插入重复键。重复键 值为(00000000-0000-0000-0000-000000000000)。该声明有 被终止了。
【问题讨论】:
-
表中有主键吗?
-
是的,我愿意。 goo.gl/njrpWugoo.gl/yWeWFX
-
你试过了吗?新国家{名称=“...”; ID = Guid.NewGuid(); }
标签: c# asp.net asp.net-mvc