编辑:
我发现了为什么它没有看到我更改了与modelbinder绑定的对象的更改的问题。在这种情况下,它不会被上下文跟踪。
你好
我的应用程序中的虚拟 ICollections 有问题。EF 自动保存您对实体所做的更改是否正确?* *
例如,如果我将一个项目添加到列表(将玩家添加到团队),它会在不使用存储库和 dbset 将其保存到数据库的情况下工作吗?
我有这样的东西
public int RayonId { get; set; }
public String Rayonnaam { get; set; }
public virtual ICollection<Duivenmelker> Duivenmelkers { get; set; }
public Rayon()
{
Duivenmelkers = new List<Duivenmelker>();
}
public void AddMelker(Duivenmelker m)
{
Duivenmelkers.Add(m);
}
上面的代码仅在本地更改列表。但是不保存对数据库的更改。我可以调用存储库将新对象直接添加到数据库中,但这不是我认为的好方法。
什么可能是错误的导致这不起作用?* *
savechanges 返回 0(认为没有进行任何更改)
我现在添加了
c.Vluchten.Attach(v);
c.Entry(v).State = EntityState.Added;
这显然有效,但我仍然不知道为什么 EF 在没有明确告诉他的情况下看不到这些变化