【问题标题】:Dotnet Core 3.1, EF1001: internal ef core api usageDotnet Core 3.1、EF1001:内部 ef core api 使用
【发布时间】:2020-02-15 03:00:35
【问题描述】:

从 2.2 升级到 Dotnet Core 3.1,EF core 一直在抱怨 EF1001: internal ef core api usage 在我的项目中添加一个感叹号。

但在编译过程中没有显示错误/警告。不知道是哪一行代码出了问题。

我可以知道如何找出我不应该使用的 API/方法吗?

【问题讨论】:

  • putting an Exclamation Mark in my project. 是什么意思?你有任何运行时错误吗?你在使用app.UseDeveloperExceptionPage (); 中间件吗?
  • Alireza,在我的解决方案资源管理器中,我在 Dependencies 旁边看到了一个感叹号。不,没有任何运行时错误,一切正常。这是关于 EntityFramework,而不是 ASPNET

标签: .net-core entity-framework-core


【解决方案1】:

来自这些分析器的警告可能真的令人困惑。如果我理解正确,问题就不是它看起来的那样。

分析仪内带有灰色警告图标的消息是正常的,表示分析仪正在检查什么。有关说明,请参阅 Analyzers in Solution Explorer documentation

如果您在父节点(“分析器”)上遇到黄色图标,请尝试卸载/重新加载项目,或者以管理员模式打开 Visual Studio。详情见“Analyzers warnings in ASP.NET Core 2.2 project in VS2019 ”的回复。

如果您在错误列表中没有看到警告,那么我建议您忽略它。

GitHub 问题“Confusing analyzer warnings in solution explorer with no way to see any details”提供了更多相关信息。

【讨论】:

  • 在管理员模式下打开 Visual Studio 对我有用。
  • 卸载/重新加载项目对我有用,谢谢。
【解决方案2】:

您是否使用数据库提供程序(即 SQLServer、Postgres 等的包)?

听起来你在说你的依赖项有一些警告。我知道 Microsoft 宣布了一些重大更改,主要针对数据库提供程序,其中包含 3.0+ 更新的 EF Core。可以像更新项目中的其他包一样简单。

只是猜测,我很可能是错的。

【讨论】:

  • 是的,我认为你是对的。今天感叹号消失了,编译时也没有警告。但是当我单击并查看依赖项时,EF1001 仍然存在。 Dependencies 中的所有项目都重新排列。我认为 MS 仍在努力。也许我现在只是忽略它。
【解决方案3】:

帮我弄清楚,得到同样的警告,

它使用的是实体框架命名空间

(using Microsoft.EntityFrameworkCore.Internal;) 而不是

using System.Linq; 这很奇怪,因为我根本没有添加 Ef。

这就是为什么我如此困惑并开始使用谷歌搜索以及我是如何到达此页面的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-22
    • 2022-11-11
    • 1970-01-01
    • 1970-01-01
    • 2020-04-23
    • 2021-09-05
    相关资源
    最近更新 更多