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

C# TypeLoadException:无法加载类型,但类型来自旧命名空间,c#,asp.net-core,asp.net-core-2.0,C#,Asp.net Core,Asp.net Core 2.0,我得到了这个错误 TypeLoadException:无法从程序集abc.Infrastructure.Providers.Data加载类型abc.Infrastructure.Providers.Identity.Entities.UserProfile',版本=1.2.6.1` 当我点击这一行services.AddMvc.AddControllersAsServices;在配置服务期间 abc.Infrastructure.Providers过去是Identity.Entities.Use

我得到了这个错误

TypeLoadException:无法从程序集abc.Infrastructure.Providers.Data加载类型abc.Infrastructure.Providers.Identity.Entities.UserProfile',版本=1.2.6.1`

当我点击这一行services.AddMvc.AddControllersAsServices;在配置服务期间

abc.Infrastructure.Providers过去是Identity.Entities.UserProfile和其他许多抛出相同错误的类型所在的名称空间。我更改了名称空间并将nuget包更新为abc.Infrastructure.Providers.Data以及包中的所有相应类。现在,abc.Infrastructure.Providers.Data.Identity.Entities.UserProfile是该类型的正确路径

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


任何帮助都将不胜感激。

可能是NuGet package cache。假设您按应该的方式升级了包的版本,这应该不是问题,但为了确保安全,我还是会杀死缓存


转到工具>NuGet软件包管理器>软件包管理器设置。然后,单击此处的“清除所有NuGet缓存”按钮。然后重新构建解决方案。

可能您在ViewImports中或代码中的某个地方有该名称空间,只需执行全局search@JoeAudette我试过了。这是一个webapi项目,所以在任何地方都没有视图,也在任何地方搜索了名称空间,但没有找到它。谢谢,我会把这个标记正确,因为它会引导我走上正确的道路。问题是,我没有更新所有的NuGet软件包,这些软件包依赖于有问题的软件包。