【发布时间】:2020-01-26 06:37:50
【问题描述】:
我刚刚将 ASP.NET Core 2.2 项目升级到 ASP.NET Core 3.0,但我的 OData 端点拒绝工作。在启动过程中,我收到以下错误:
System.TypeLoadException:“无法从程序集“Microsoft.AspNetCore.Mvc.Core,版本=3.0.0.0,文化=中性,PublicKeyToken=adb9793829ddae60”加载类型“Microsoft.AspNetCore.Mvc.Internal.ActionConstraintCache”。
如何解决这种类型解析问题?
【问题讨论】:
-
是的,基本上他们在 .net core 3 中内置了 ActionConstraintCache。因此,如果您希望 odata 现在可以工作,只需在 odata 程序集中手动修复它或等到 .net core 3 支持 odata
-
不过似乎没有明确的时间表。我确实在其中一个报告的问题中看到了关于 Microsoft 没有像他们对 gRPC 那样对 OData 给予那么多爱的长篇大论。
-
您只需要添加一些技巧即可使其正常工作。看到这个thread
-
@johnny5,谢谢。我审查了该线程和其他喜欢它的人。看来我们必须等待,看看在 .NET Core 3.1 进入 RTM 时是否会准备好一些东西。我没有足够的带宽来想出解决方法。我的团队很小,我们有大量的可交付成果。
标签: asp.net-core odata asp.net-core-3.0