TypeLoadException:无法加载类型,但类型来自旧的命名空间

时间:2018-02-15 14:01:20

标签: c# asp.net-core asp.net-core-2.0

我收到此错误

  

TypeLoadException:无法加载类型abc.Infrastructure.Providers.Identity.Entities.UserProfile'来自assembly abc.Infrastructure.Providers.Data,Version = 1.2.6.1。

我在配置服务期间点击此行services.AddMvc().AddControllersAsServices();

abc.Infrastructure.Providers曾经是Identity.Entities.UserProfile(以及许多更多类型会抛出相同错误)的命名空间。我更改了命名空间并将nuget包更新为{{1与包内的所有相应类一起。现在abc.Infrastructure.Providers.Data是该类型的正确路径。

问题是我不明白为什么aspnetcore应用程序试图引用旧的命名空间。我删除了bin和obj文件夹,认为它可能与旧程序集混淆了。我已经清理了这个项目。是否有虚拟文件夹,我可能会缓存程序集?

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

可能是NuGet包缓存。假设你碰到了你应该拥有的软件包版本,那不应该成为一个问题,但我仍然会杀死缓存,只是为了确定。

转到工具> NuGet Package Manager > 程序包管理器设置。然后,单击"清除所有NuGet缓存" 按钮。之后重建您的解决方案