c# - 如何禁止对 EdmMetadata 表发出查询?

标签 c# entity-framework ef-code-first database-metadata

我在我的新项目中使用 EF Code First。我不会使用自动迁移功能,也不会在数据库中创建 [__MigrationHistory] ​​表。但是通过查看 Profiler,我总能看到 EF 在任何其他查询之前发出这样的查询:

SELECT 
[GroupBy1].[A1] AS [C1]
FROM ( SELECT 
    COUNT(1) AS [A1]
    FROM [dbo].[__MigrationHistory] AS [Extent1]
)  AS [GroupBy1]

如何禁用此功能?

最佳答案

禁用此功能的唯一方法是不使用任何数据库初始化程序。一旦您使用数据库初始化程序(您希望 EF 来创建或更改数据库),您将始终对该表有查询。

要关闭数据库初始化程序,请在应用程序的 Bootstrap 中使用它:

Database.SetInitializer<YourContext>(null);

关于c# - 如何禁止对 EdmMetadata 表发出查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11280120/

相关文章:

azure - 无法从 Azure 函数连接到 Azure SQL

c# - EF 迁移中的自定义代码执行

entity-framework - 指定外键属性的 EF Code First Fluent API

asp.net-mvc - ASP.NET MVC 3 EF Code First - 如何创建一个可以选择性地引用其自身类型的父级的模型?

c# - 在引用中找不到 System.Drawing.dll

c# - 如何从 EF 的非异步 SaveChanges 安全地调用异步方法?

entity-framework - 获取SQL以进行自动迁移的策略

.net - 从 Entity Framework 获取动态 SQL 结果

c# - 软删除 - ActiveRecord with Listeners

c# - 使用 C# 与 Twitter 交互的最成熟的库?