asp.net-mvc - DbContext.OnConfiguring 没有被调用并且在 ASP.NET Core 中表现得很奇怪

标签 asp.net-mvc asp.net-core entity-framework-core

在我的 asp.net core 项目中,我有一个从 DbContext 派生的 ReadingContext 类。根据文档,应该为创建的每个 DbContext 实例调用 OnConfiguring。

但就我而言,仅当我在调试时检查实例时才会调用它。我在 OnConfiguring 中有一个断点,但即使调用该方法也不会命中它。

OnConfiguring 方法。 OnConfiguring method .

实例已创建,但尚未调用 OnConfiguring Instance created

.

OnConfiguring 调用查看对象,但未命中断点。 OnConfiguring called

最佳答案

According to documentation OnConfiguring should be called for every instance of DbContext that is created.

我不知道您引用的是哪个文档,但我确信它没有说 OnConfiguring 在创建上下文时运行。因为事实并非如此。只要上下文实例第一次实际使用,它就会运行。这就是为什么当您开始在调试 View 中检查上下文时就会看到方法调用。当您在调试器中的断点处暂停时,即使代码被命中,调试器也永远不会跳转到另一个断点。

上下文应该被大量创建和处置。因此,创建上下文必须尽可能轻量。其内部组件尽可能通过延迟初始化来创建。

关于asp.net-mvc - DbContext.OnConfiguring 没有被调用并且在 ASP.NET Core 中表现得很奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39058739/

相关文章:

c# - Azure Functions .NET Core 中的 EF Core 2.0 连接字符串

c# - Entity Framework 工具不适用于 UWP 应用程序 C#

javascript - 如何在 MVC 上将 id 设置为 Html.TextBox 项目

c# - if-else 等效于通过 where 子句中的 linq-to-sql 查询 c#

asp.net-mvc - Web Api 调用在服务器上返回 404

c# - ASP.NET MVC 6(ASP.NET Core 或 ASP.NET5)中的友好 URL

c# - 如何在 EF Core 中插入外键影子属性?

asp.net-mvc - 与其他表单数据结合使用时,文件未使用 dropzone.js 发布

c# - 路由添加静态段让分页更友好asp.net core

c# - 为什么 ASP.NET Core 3.1 应用程序中的 appsettings 中的 Appinsight 日志级别被忽略?