我正在迁移使用 .NET Core SDK 1.0.0-preview2-1-003177 构建的解决方案,因为我想在 Visual Studio 2017 中使用它。我使用 .NET Core SDK 1.0.1 中的 dotnet migrate 命令,一切顺利,编译。当我使用 IIS Express 运行 Web 部件时,经典的 Program.cs 包含
var host = new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
host.Run();
在 Build() 处崩溃并出现此异常
System.MissingMethodException: 'Method not found: 'System.IServiceProvider Microsoft.Extensions.DependencyInjection.ServiceCollectionContainerBuilderExtensions.BuildServiceProvider(Microsoft.Extensions.DependencyInjection.IServiceCollection)'.'
根本找不到原因
最佳答案
看起来你的某些依赖项没有更新到正确的版本。它可以是旧版本或新版本。您可以创建一个新项目 ( dotnet new ) 并验证 csproj 文件中的包版本。 99% 的错误是由版本不匹配引起的。
关于c# - WebHostBuilder.Build() MissingMethodException in .NET Core 迁移方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43257349/