如何将.NET Core 2.2 Web API迁移到.NET Core 3.0?

夜莺

我遵循了Microsoft的迁移指南,但是失败了。因此,我改为使用.NET 2.2创建了一个新项目以建立干净的模板,然后尝试迁移到.NET Core 3.0。但是它再次失败了。在中Startup.cs,依赖项注入找不到方法services.AddMvc()

看来我的代码仍然引用.NET 2.2,而不是.NET 3.0。

如果运行dotnet watch run,则会出现以下错误:

应用程序启动异常System.InvalidOperationException:端点路由不支持'IApplicationBuilder.UseMvc(...)'。要使用'IApplicationBuilder.UseMvc',请在'ConfigureServices(...)中设置'MvcOptions.EnableEndpointRouting = false'。在E:的netmig.Startup.Configure(IApplicationBuilder应用程序,IHostingEnvironment env)的Microsoft.AspNetCore.Builder.MvcApplicationBuilderExtensions.UseMvc(IApplicationBuilder应用程序)在Microsoft.AspNetCore.Builder.MvcApplicationBuilderExtensions.UseMvc(IApplicationBuilder应用程序,操作'1 configureRoutes) testapp \ netmig \ Startup.cs:System.RuntimeMethodHandle.InvokeMethod(对象目标,Object []参数,签名sig,布尔构造函数,布尔wrapExceptions)位于System.Reflection.RuntimeMethodInfo.Invoke(对象obj,BindingFlags invokeAttr,Binder)处的第46行黏合剂
在Microsoft.AspNetCore.Hosting.ConfigureBuilder.Invoke(对象实例,IApplicationBuilder构建器)在Microsoft.AspNetCore.Hosting.ConfigureBuilder。<> c__DisplayClass4_0.b__0(IApplicationBuilder构建器)在Microsoft.AspNetCore.Hosting.GenericWebHostBuilder。<> c__DisplayClass13_0.b__2( Microsoft.AspNetCore.Mvc.Filters.MiddlewareFilterBuilderStartupFilter。<> c__DisplayClass0_0.g__MiddlewareFilterBuilder | 0(IApplicationBuilder builder)在Microsoft.AspNetCore.HostFilteringStartupFilter。<> c__DisplayClass0_0.b__0(IApplicationBuilder app)在Microsoft.AspNetricWeb上的Host。 StartAsync(CancellationToken cancelledToken)未处理的异常。System.InvalidOperationException:端点路由不支持“ IApplicationBuilder.UseMvc(...)”。要使用'IApplicationBuilder。UseMvc'在'ConfigureServices(...)中设置'MvcOptions.EnableEndpointRouting = false'。在E:的netmig.Startup.Configure(IApplicationBuilder应用程序,IHostingEnvironment env)的Microsoft.AspNetCore.Builder.MvcApplicationBuilderExtensions.UseMvc(IApplicationBuilder应用程序)在Microsoft.AspNetCore.Builder.MvcApplicationBuilderExtensions.UseMvc(IApplicationBuilder应用程序,操作'1 configureRoutes) testapp \ netmig \ Startup.cs:System.RuntimeMethodHandle.InvokeMethod(对象目标,Object []参数,签名sig,布尔构造函数,布尔wrapExceptions)位于System.Reflection.RuntimeMethodInfo.Invoke(对象obj,BindingFlags invokeAttr,Binder)处的第46行资料夹,Object []参数,CultureInfo文化)
在Microsoft.AspNetCore.Hosting.ConfigureBuilder.Invoke(对象实例,IApplicationBuilder构建器)在Microsoft.AspNetCore.Hosting.ConfigureBuilder。<> c__DisplayClass4_0.b__0(IApplicationBuilder构建器)在Microsoft.AspNetCore.Hosting.GenericWebHostBuilder。<> c__DisplayClass13_0.b__2( Microsoft.AspNetCore.Mvc.Filters.MiddlewareFilterBuilderStartupFilter。<> c__DisplayClass0_0.g__MiddlewareFilterBuilder | 0(IApplicationBuilder builder)在Microsoft.AspNetCore.HostFilteringStartupFilter。<> c__DisplayClass0_0.b__0(IApplicationBuilder app)在Microsoft.AspNetricWeb上的Host。 Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellingToken),位于Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions。Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost主机,CancellationToken令牌),位于Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.Run(IHost主机),位于netmig.Program.Main(字符串[] args) ),在E:\ testapp \ netmig \ Program.cs:line 18中观看:退出,错误代码为-532462766

我正在运行的完整代码可以在GitHub上找到我的.NET信息:

dotnet --info .NET Core SDK(反映任何global.json):版本:
3.0.100提交:04339c3a26

运行时环境:OS名称:Windows OS版本: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

托尼·恩戈

对于v2.2

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
    }

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        app.UseMvc();
    }

对于v3

public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllers();
        }

        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            app.UseRouting();

            app.UseAuthorization();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
            });
        }

还要确保您的csproj是目标.net core 3.0

  <PropertyGroup>
    <TargetFramework>netcoreapp3.0</TargetFramework>
  </PropertyGroup>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

迁移到ASP.NET Core RC2后,集成测试失败

来自分类Dev

将选项迁移到ASPNET Core RC2

来自分类Dev

如何从Web API调用ASP.NET Core Web MVC

来自分类Dev

将Asp.Net Core RC1迁移到RC2后的问题

来自分类Dev

Asp.net Core rc2 Web API文件上传

来自分类Dev

如何将静态类从.NET迁移到.NET Core?

来自分类Dev

如何将路由从.NET迁移到ASP.NET Core?(具体示例)

来自分类Dev

迁移到.Net Core 3后,JsonPatchDocument为null

来自分类Dev

将AddNLog从.NET Core 2.2迁移到3.0

来自分类Dev

将TempData null重定向到View-迁移到ASP.NET Core 3之后

来自分类Dev

如何将文件从Angular上传到ASP.NET Core Web API

来自分类Dev

如何将文件发送到列表-.NET Core Web API-邮递员

来自分类Dev

asp.net core 2 Web API超时问题

来自分类Dev

如何将Azure Functions v3迁移到.net Core 5.0

来自分类Dev

从.Net Core 3.1迁移到.NET 5

来自分类Dev

如何从Web API调用ASP.NET Core Web MVC

来自分类Dev

迁移到ASP.NET Core RC2后,集成测试失败

来自分类Dev

Asp.net Core rc2 Web API文件上传

来自分类Dev

.Net Core Web API的Auth0身份验证

来自分类Dev

如何将HTTP POST .NET Framework迁移到.NET Core

来自分类Dev

Angular 2 & .NET Core Web Api HttpPost 问题

来自分类Dev

将 net core preview xproj 迁移到 csproj 后出错

来自分类Dev

如何从 Angular 2 访问 Asp.net Core Api

来自分类Dev

如何将 ASP.NET Core null 绑定到 Angular2 null?

来自分类Dev

mvc 到 net core 2 迁移身份验证

来自分类Dev

.NET Core 2 API 属性路由配置

来自分类Dev

.Net Core 2 FromSql 问题

来自分类Dev

如何将 MVC 中的动态绑定代码从 .NET Framework 迁移到 .NET Core?

来自分类Dev

从 EF Core 2 迁移到 EF Core 3

Related 相关文章

热门标签

归档