zoukankan      html  css  js  c++  java
  • Core2.0 项目到2.1

    Core2.0 项目到2.1

    https://www.cnblogs.com/FlyLolo/p/ASPNETCore2_10.html

    .NET Core 2.1 终于发布了, 赶紧升级一下。

    一. 安装SDK
    首先现在并安装 SDK(64-bit)

    安装完毕后如果新建项目可以看到已经有2.1的选项了

    二. 更新现有2.0项目到2.1

    1. 修改 项目版本
      右键点击解决方案管理器中的项目, 选择编辑项目名.csproj

    netcoreapp2.0 中的2.0改为2.1,保存。

    1. 将引用 Microsoft.AspNetCore.All 替换为 Microsoft.AspNetCore.App
      项目依赖中找到 Microsoft.AspNetCore.All ,移除它, 在Nugget中搜索并安装 Microsoft.AspNetCore.App

    注意:以下内容依旧包含在 Microsoft.AspNetCore.All 中, 而 Microsoft.AspNetCore.App 中不存在

    Microsoft.AspNetCore.ApplicationInsights.HostingStartup
    Microsoft.AspNetCore.AzureAppServices.HostingStartup
    Microsoft.AspNetCore.AzureAppServicesIntegration
    Microsoft.AspNetCore.DataProtection.AzureKeyVault
    Microsoft.AspNetCore.DataProtection.AzureStorage
    Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv
    Microsoft.AspNetCore.SignalR.Redis
    Microsoft.Data.Sqlite
    Microsoft.Data.Sqlite.Core
    Microsoft.EntityFrameworkCore.Sqlite
    Microsoft.EntityFrameworkCore.Sqlite.Core
    Microsoft.Extensions.Caching.Redis
    Microsoft.Extensions.Configuration.AzureKeyVault
    Microsoft.Extensions.Logging.AzureAppServices
    Microsoft.VisualStudio.Web.BrowserLink
    所以如果项目中需要用到这些内容, 可以单独引用它们, 而不建议再次整体引用 Microsoft.AspNetCore.All

    1. 修改其他引用
      再次打开*.csproj文件, 可以看到对应的 Microsoft.AspNetCore.All 已经替换为Microsoft.AspNetCore.App 了

    删除各种 例如:

    最终这个*.csproj文件类似这样

    复制代码


    netcoreapp2.1
    aspnet-{Project Name}-{GUID}






    复制代码
    4.修改Program.cs
    修改Main方法和BuildWebHost方法, 结果如下

    复制代码
    public class Program
    {
    public static void Main(string[] args)
    {
    CreateWebHostBuilder(args).Build().Run();
    }

        public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
            WebHost.CreateDefaultBuilder(args)
                .UseStartup<Startup>();
    }
    

    复制代码
    5. 修改Startup
    修改后代码示例如下, 主要是新增行,删除UseBrowserLink, 见下文代码的颜色标注

    复制代码
    using Microsoft.AspNetCore.Builder;
    using Microsoft.AspNetCore.Hosting;
    using Microsoft.AspNetCore.Http;
    using Microsoft.AspNetCore.Mvc;
    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.DependencyInjection;

    namespace WebApp1
    {
    public class Startup
    {
    public Startup(IConfiguration configuration)
    {
    Configuration = configuration;
    }

        public IConfiguration Configuration { get; }
    
        public void ConfigureServices(IServiceCollection services)
        {
            services.Configure<CookiePolicyOptions>(options =>
            {
                // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded = context => true;
                options.MinimumSameSitePolicy = SameSiteMode.None;
            });
    
    
            services.AddMvc()
                .SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
        }
    
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
    

              //app.UseBrowserLink(); 删除此行
    app.UseDeveloperExceptionPage();
    }
    else
    {
    app.UseExceptionHandler("/Error");
    app.UseHsts();
    }

            app.UseHttpsRedirection();
            app.UseStaticFiles();
            app.UseCookiePolicy();
    
            app.UseMvc();
        }
    }
    

    }
    复制代码
    三. 其他改动
    shared文件夹中添加了新文件_CookieConsentPartial.cshtml, 在_Layout文件中被引用
    _ValidationScriptsPartial.cshtml 文件中的jquery.validate.js版本升级到了1.17.0
    JQuery从2.2.0升级到3.3.1
    四. 一点郁闷的事
    看到2.1发布, 首先没有去下载SDK而是查看VS是否有更新,希望更新VS的时候可以顺便更新SDK。 当前版本15.7.1 , 官方文档中提示前几天有15.7.2发布, VS中检查更新一直没有。

    下载SDK安装好后, 终于右上角的小旗子亮了提示有更新, 各种重试均是不动没有下载进度。

    最后不管它发现它以一种怪异的方式开始了更新。。。
    NET Core2.1 WEB老项目迁移
    .NET Core2.1 版本新增功能不在赘述.

      NET Core2.1更新链接

    如果开发需要安装Net Core2.1SDK,及Runtime。

    .NET Core2.1安装地址。

    接下来是WEB 项目迁移,建议提前备份。装好后如果出现Process Failure,说明安装版本不对。

    https://www.cnblogs.com/dwjkj/p/9115090.html

  • 相关阅读:
    ActiveMQ 即时通讯服务 浅析
    Asp.net Mvc (Filter及其执行顺序)
    ActiveMQ基本介绍
    ActiveMQ持久化消息的三种方式
    Windows Azure Virtual Machine (27) 使用psping工具,测试Azure VM网络连通性
    Azure China (10) 使用Azure China SAS Token
    Windows Azure Affinity Groups (3) 修改虚拟网络地缘组(Affinity Group)的配置
    Windows Azure Storage (22) Azure Storage如何支持多级目录
    Windows Azure Virtual Machine (26) 使用高级存储(SSD)和DS系列VM
    Azure Redis Cache (2) 创建和使用Azure Redis Cache
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/9116727.html
Copyright © 2011-2022 走看看