gpt4 book ai didi

c# - 无法更新 EntitySet - 因为它有一个 DefiningQuery 并且不存在 元素

转载 作者:IT王子 更新时间:2023-10-29 03:27:22 26 4
gpt4 key购买 nike

我在 .net 3.5 中使用 Entity Framework 1。

我正在做这样简单的事情:

var roomDetails = context.Rooms.ToList();

foreach (var room in roomDetails)
{
room.LastUpdated = DateTime.Now;
}

当我尝试这样做时出现此错误:

 context.SaveChanges();

我得到错误:

Unable to update the EntitySet - because it has a DefiningQuery and no <UpdateFunction> element exists in the <ModificationFunctionMapping> element to support the current operation.

我正在对上下文进行大量更新并且没有任何问题,只有当我尝试更新这个特定实体时才会出现这种情况。

我所有的搜索都显示相同的东西,即没有在我尝试更新的实体上声明主键。但是,唉,我确实声明了一个主键...

最佳答案

它通常是由于以下原因之一而发生的:

  • 从数据库 View 映射实体集
  • 自定义数据库查询
  • 数据库表没有主键

执行此操作后,您可能仍需要在 Entity Framework 设计器中进行更新(或者删除实体然后添加它),然后才能停止收到错误。

关于c# - 无法更新 EntitySet - 因为它有一个 DefiningQuery 并且不存在 <UpdateFunction> 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7583770/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com