zoukankan      html  css  js  c++  java
  • jQuery火箭图标返回顶部代码

    .net core 3.1 今天已正式发布,3.1跟3.0差别不是很大,主要是对 3.0一小部分修复和完善,最重要的是.NET Core 3.1是长期支持(LTS)版本,建议大家升级。

    .net core 2.2 这个月就要停止维护,并且微软将不再提供支持,如果你在使用 2.2 ,建议升级到 3.1,可以先升级到3.0,可以参考文档:

    ASP.NET Core 2.2 迁移到3.0:https://docs.microsoft.com/zh-cn/aspnet/core/migration/22-to-30?view=aspnetcore-3.0&tabs=visual-studio

    如果在使用 2.1,可以暂时不用着急升级,2.1也是 LTS 版本

    ASP.NET Core 3.0的新增功能:https://docs.microsoft.com/zh-cn/aspnet/core/release-notes/aspnetcore-3.0?view=aspnetcore-3.0

    替换AutoFac服务

    在 .Net Core 3.0 之前的时候,返回一个 IServiceProvider 注入到ConfigureServices服务中。

    用 .Net Core 3.0 框架运行之后会报错:ConfigureServices returning an System.IServiceProvider isn't supported.

    找文档之后发现 3.0 中 ConfigureServices 已经不支持返回 IServiceProvider 。

    .Net Core 2.2的写法

            /// <summary>
            /// //负责注入服务
            /// </summary>
            /// <param name="services"></param>
            /// <returns></returns>
            public IServiceProvider ConfigureServices(IServiceCollection services)
            {
                //初始化容器
                var builder = new ContainerBuilder();
                //管道寄居
                builder.Populate(services);
                //业务逻辑层所在程序集命名空间
                Assembly service = Assembly.Load("NetCoreDemo.Service");
                //接口层所在程序集命名空间
                Assembly repository = Assembly.Load("NetCoreDemo.Repository");
                //自动注入
                builder.RegisterAssemblyTypes(service, repository)
                    .Where(t => t.Name.EndsWith("Service"))
                    .AsImplementedInterfaces();
                //注册仓储,所有IRepository接口到Repository的映射
                builder.RegisterGeneric(typeof(Repository<>))
                    //InstancePerDependency:默认模式,每次调用,都会重新实例化对象;每次请求都创建一个新的对象;
                    .As(typeof(IRepository<>)).InstancePerDependency();
                //构造
                ApplicationContainer = builder.Build();
                //将AutoFac反馈到管道中
                return new AutofacServiceProvider(ApplicationContainer);
            }

    .Net Core 3.0的写法

    修改 Program.cs 将默认ServiceProviderFactory指定为AutofacServiceProviderFactory

        public class Program
        {
            public static void Main(string[] args)
            { 
                CreateHostBuilder(args).Build().Run();
            }
    
            public static IHostBuilder CreateHostBuilder(string[] args) =>
                Host.CreateDefaultBuilder(args)
                     //将默认ServiceProviderFactory指定为AutofacServiceProviderFactory
                    .UseServiceProviderFactory(new AutofacServiceProviderFactory())
                    .ConfigureWebHostDefaults(webBuilder =>
                    {
                        webBuilder.UseStartup<Startup>();
                        webBuilder.UseUrls("http://*:8004");
                    });
        }

    然后在 Startup.cs 中添加 ConfigureContainer 方法

    使用ConfigureContainer访问Autofac容器生成器,并直接向Autofac注册。

            public void ConfigureContainer(ContainerBuilder builder)
            {
                //业务逻辑层所在程序集命名空间
                Assembly service = Assembly.Load("NetCoreDemo.Service");
                //接口层所在程序集命名空间
                Assembly repository = Assembly.Load("NetCoreDemo.Repository");
                //自动注入
                builder.RegisterAssemblyTypes(service, repository)
                    .Where(t => t.Name.EndsWith("Service"))
                    .AsImplementedInterfaces();
                //注册仓储,所有IRepository接口到Repository的映射
                builder.RegisterGeneric(typeof(Repository<>))
                    //InstancePerDependency:默认模式,每次调用,都会重新实例化对象;每次请求都创建一个新的对象;
                    .As(typeof(IRepository<>)).InstancePerDependency();
            }

    参考:https://docs.autofac.org/en/latest/integration/aspnetcore.html#asp-net-core-3-0-and-generic-hosting

  • 相关阅读:
    SQL Server 2008中如何为XML字段建立索引
    比如取得一个div得innerHTML
    C#生成CHM文件(入门篇)
    jquery outerhtml
    WCF 中状态的保存
    MVC进阶学习HtmlHelper控件解析(一)
    MVC进阶学习HtmlHelper控件解析(四)
    MVC进阶学习HtmlHelper之GridView控件拓展(一)
    MVC进阶学习HtmlHelper控件解析(三)
    MVC进阶学习表单提交总结
  • 原文地址:https://www.cnblogs.com/tenghao510/p/11984473.html
Copyright © 2011-2022 走看看