【问题标题】:Linq to Entity delete a row from a table have no primary keyLinq to Entity 从表中删除一行没有主键
【发布时间】:2012-01-19 05:01:57
【问题描述】:

Q1. LINQ to Entity 可以在没有主键的表上执行创建、更新或删除操作吗? DeleteObject 从表中删除一行(错误::缺少程序集)。我应该怎么做才能使用 DeleteObject。

作为 q2 的替代方法。(删除对象)我试过
db.check_master.Remove(checks);(错误::无法更新 EntitySet 'entitysetName',因为它有一个 DefiningQuery 和元素中不存在支持当前操作的元素)

无法访问 EF 提供的任何对象,例如 Attach、DeleteObject...等。 (使用代码优先和现有的数据库方法)

【问题讨论】:

  • 有什么我应该选择的替代品吗? b'因为我不想为所需的表创建主键。
  • 是否可以使用任何其他查询模型查询表(没有主键)。
  • 但是我的列中有字符串类型值,我用来唯一标识表中的一行
  • 还有一点我在现有数据库中首先使用 EF 代码,但问题是我无法使用 EF 对象,例如 Attch、DeleteObject...等

标签: asp.net-mvc-3 entity-framework linq-to-sql linq-to-entities


【解决方案1】:

如果你添加主键对你来说真的很方便。

否则,您可能需要使用DataContext.ExecuteCommand()

【讨论】:

  • 同意,我认为不在你的桌子上使用钥匙会导致很多问题,因为这是第一个。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-23
  • 1970-01-01
相关资源
最近更新 更多