首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何禁用EF消息: Context 'Context‘已开始跟踪'Model’实体。考虑使用

如何禁用EF消息: Context 'Context‘已开始跟踪'Model’实体。考虑使用
EN

Stack Overflow用户
提问于 2019-04-08 04:05:16
回答 1查看 1.2K关注 0票数 4

我在Azure中查看我的应用程序日志流,查找asp.net核心2 EF核心web应用程序编程接口,并收到以下消息的轰炸

代码语言:javascript
复制
Context 'Context' started tracking 'Model' entity. Consider using 'DbContextOptionsBuilder.EnableSensitiveDataLogging' to see key values.

有没有办法在不关闭代码跟踪的情况下禁用/抑制这些消息?

编辑:来自dbContextClass的代码

代码语言:javascript
复制
public class Context : DbContext
    {
        public Context (DbContextOptions<Context> options)
            : base(options)
        {
        }

        public DbSet<Model> Model { get; set; }

        /*protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            // add your own confguration here
        }*/
}
EN

回答 1

Stack Overflow用户

发布于 2019-04-08 16:37:57

当你在没有使用AsNoTracking的情况下查询数据库中的一些记录时,EF核心将开始在当前上下文中跟踪它。AsNoTracking是一种解决方案,因为你不希望EF Core跟踪对它的任何修改。在许多情况下,只要不在上下文中添加/附加/更新具有相同id的实体,没有AsNoTracking就可以。但是,当不需要跟踪时,显式使用它是很好的。

有关更多详细信息,请参阅此article

此外,LogStartedTracking字段仅支持实体框架核心2.1,您可以尝试升级您的EF核心版本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55563187

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档