3
我正在寻找答案,但我没有找到任何答案。所以当我在context.Customers
中添加第二个元素时,我得到一个例外:DbContext.Add错误,集合被修改;枚举操作可能不会执行
收集被修改;枚举操作可能不会执行。
为什么?任何帮助都感激不尽。
我的代码:
public class CompanyInitalizer : DropCreateDatabaseAlways<CompanyContext>
{
protected override void Seed(CompanyContext context)
{
var contacts = new List<Contact>
{
new Contact {
Vezetéknév="Nagy",
Keresztnév="János",
Beosztás="alkalmazott",
Email="[email protected]",
Telefonszám="06361254452"
},
new Contact {
Vezetéknév="Kiss",
Keresztnév="Ferenc",
Beosztás="alkalmazott",
Email="[email protected]",
Telefonszám="06361254452"
}
};
contacts.ForEach(d => context.Contacts.Add(d));
context.SaveChanges();
var events = new List<Event>
{
new Event {
Időpont=DateTime.Parse("12/31/2010"),
Típusa="Tárgyalás",
Leírás="Éves költségvetés"
},
new Event {
Időpont=DateTime.Parse("12/31/2010"),
Típusa="Tárgyalás",
Leírás="Éves költségvetés"
}
};
events.ForEach(d => context.Events.Add(d));
context.SaveChanges();
var customers = new List<Customer>
{
new Customer {
Cégnév ="Default1.Kft",
Irányítószám= 1012,
Város="Budapest",
Cím="Tavasz utca 54.",
Weblap="http://www.default1.com",
Telefonszám="06361254452",
Contacts= contacts,
Events=events
},
new Customer {
Cégnév ="Default2.Kft",
Irányítószám= 2440,
Város="Százhalombatta",
Cím="Tél utca 34.",
Weblap="http://www.default1.com",
Telefonszám="063623254452",
Contacts=contacts,
Events=events
}
};
customers.ForEach(d => context.Customers.Add(d)); //Throw exception here!
context.SaveChanges();
}
}
http://stackoverflow.com/questions/7536459/ef-4-1-and-collection-was-modified-enumeration-operation-may-not-execute-exc - 这可以帮助你 – ssilas777 2013-02-11 12:38:29
最有可能相同问题由ssilas提及。一些循环引用EF也许不会。另一篇文章有很多细节。建议你移动回答SSILAS – 2013-02-11 13:57:10
这不工作,如何解决它? – 2013-02-11 22:46:23