Startup.cs
中,依赖注入找不到services.AddMvc()
方法。看起来我的代码仍然引用的是.NET 2.2而不是.NET 3.0。
如果我运行
dotnet watch run
,会得到以下错误消息:应用程序启动异常System.InvalidOperationException: 终结点路由不支持 'IApplicationBuilder.UseMvc(...)'. 若要使用 'IApplicationBuilder.UseMvc',请在 'ConfigureServices(...)' 中设置 'MvcOptions.EnableEndpointRouting = false'。在 E:\testapp\netmig\Startup.cs 的第46行中,在Microsoft.AspNetCore.Builder.MvcApplicationBuilderExtensions.UseMvc(IApplicationBuilder app, Action'1 configureRoutes)处和Microsoft.AspNetCore.Builder.MvcApplicationBuilderExtensions.UseMvc(IApplicationBuilder app)处。在Microsoft.AspNetCore.Hosting.ConfigureBuilder.Invoke(Object instance, IApplicationBuilder builder)处和Microsoft.AspNetCore.Hosting.ConfigureBuilder.<>c__DisplayClass4_0.b__0(IApplicationBuilder builder)处和Microsoft.AspNetCore.Hosting.GenericWebHostBuilder.<>c__DisplayClass13_0.b__2(IApplicationBuilder app)处和Microsoft.AspNetCore.Mvc.Filters.MiddlewareFilterBuilderStartupFilter.<>c__DisplayClass0_0.g__MiddlewareFilterBuilder|0(IApplicationBuilder builder)处和Microsoft.AspNetCore.HostFilteringStartupFilter.<>c__DisplayClass0_0.b__0(IApplicationBuilder app)处抛出未处理的异常。 System.InvalidOperationException:终结点路由不支持'IApplicationBuilder.UseMvc(...)'。要使用'IApplicationBuilder.UseMvc',请在'ConfigureServices(...)'中设置'MvcOptions.EnableEndpointRouting = false'。在E:\ testapp \ netmig \ Startup.cs的第46行,在Microsoft.AspNetCore.Builder.MvcApplicationBuilderExtensions.UseMvc(IApplicationBuilder app,Action'1 configureRoutes)处和Microsoft.AspNetCore.Builder.MvcApplicationBuilderExtensions.UseMvc(IApplicationBuilder app)处。在Microsoft.AspNetCore.Hosting.ConfigureBuilder.Invoke(Object instance,IApplicationBuilder builder)处和Microsoft.AspNetCore.Hosting.ConfigureBuilder。< > c__DisplayClass4_0.b__0(IApplicationBuilder builder)处和Microsoft.AspNetCore.Hosting.GenericWebHostBuilder。< > c__DisplayClass13_0.b__2(IApplicationBuilder app)处和Microsoft.AspNetCore.Mvc.Filters.MiddlewareFilterBuilderStartupFilter。< > c__DisplayClass0_0.g__MiddlewareFilterBuilder | 0(IApplicationBuilder builder)处和Microsoft.AspNetCore.HostFilteringStartupFilter。< > c__DisplayClass0_0.b__0(IApplicationBuilder app)处抛出未处理的异常。在Microsoft.AspNetCore.Hosting.GenericWebHostService.StartAsync(CancellationToken cancellationToken)处和Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken)处和Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host,CancellationToken token)处和Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host,CancellationToken token)处和Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.Run(IHost host)处和E:\ testapp \ netmig \ Program.cs的netmig.Program.Main(String[] args)的第18行。watch:以错误代码-532462766退出
我运行的完整代码可以在GitHub上找到。我的.NET信息:
dotnet --info .NET Core SDK(反映任何global.json):版本:
3.0.100 提交: 04339c3a26运行时环境: 操作系统名称: Windows 操作系统版本: 10.0.18362 操作系统平台:Windows RID: win10-x64 基本路径: C:\Program Files\dotnet\sdk\3.0.100\
主机(用于支持): 版本:3.0.0 提交: 7d57652f33
已安装的.NET Core SDK: 2.2.401 [C:\Program Files\dotnet\sdk] 3.0.100 [C:\Program Files\dotnet\sdk]
已安装的.NET Core运行时: Microsoft.AspNetCore.All 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.NETCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 3.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]要安装其他.NET Core运行时或SDK:
https://aka.ms/dotnet-download