【问题标题】:Entity Framework Core does not have access to system tablesEntity Framework Core 无权访问系统表
【发布时间】:2021-10-20 14:16:26
【问题描述】:

我正在使用 EF Core 访问 SQL Server 系统表中的 CDC 表,但命令 ef scaffold 找不到这些表。我确实成功地从系统表中访问了表。

我尝试将表授予 dbo 所有者,但没有成功。

堆栈

  • SQL Server 2016
  • EF Core 3.1

【问题讨论】:

  • 不确定是否可以直接使用 CDC 表,我可能会建议不要这样做,因为它们可以在 SQL Server 版本之间更改。如果你真的想使用它们,你可以在它们的顶部创建一些视图并使用它们。
  • 其实这是一个非常具体的场景。该视图有效,我从 cdc 表中读取字段。谢谢!

标签: .net-core entity-framework-core sql-server-2016


【解决方案1】:

我认为您不能直接使用 CDC 表,我可能会建议不要这样做,因为它们可以在 SQL Server 版本之间更改。

如果您真的想使用它们,您可以在 CDC 表的顶部创建一个或多个视图并改用它们。这样 EF 会选择它们,如果表发生变化,它们在一定程度上是未来的证明,因为您只需要更改视图而不是修复和重新编译代码。

【讨论】:

    猜你喜欢
    • 2022-12-10
    • 1970-01-01
    • 2019-02-15
    • 2021-04-03
    • 2022-08-02
    • 2020-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多