【发布时间】:2013-02-11 12:18:37
【问题描述】:
我正在寻找答案,但我没有找到任何答案。所以当我在context.Customers 中添加第二个元素时,我得到一个异常:
集合已修改;枚举操作可能无法执行。
为什么?任何帮助将不胜感激。
我的代码:
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="nagy.janos@default1.com",
Telefonszám="06361254452"
},
new Contact {
Vezetéknév="Kiss",
Keresztnév="Ferenc",
Beosztás="alkalmazott",
Email="kiss.ferenc@default1.com",
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();
}
}
【问题讨论】:
-
stackoverflow.com/questions/7536459/… - 这可能对你有帮助
-
很可能与 ssilas 提到的问题相同。一些循环引用 EF 可能不喜欢。另一个帖子有很多细节。建议你移动回答 SSILAS
-
这个不行,怎么解决?
标签: c# asp.net-mvc-3 entity-framework