首页 .Net Abp vNext 番外篇丨服务替换

Abp vNext 番外篇丨服务替换

系列文章列表,点击展示/隐藏

系列教程一目录:知识点源码解析

系列教程二目录:Bcvp AbpVnext讲解

系列教程三目录:单个知识点讲解

系列教程四目录:分库分表(日志系统案例讲解)

本文梯子

    正文

    缘起

    业务调整,们需要将Abp vNext的现有接口或服务进行重写.

    正文

    当我们需要重写掉abp的某些服务的时候如下面代码所示.

        [ExposeServices(typeof(IIdentityRoleAppService))]
        public >RoleAppService:IdentityRoleAppService
        {
    
        }
    

    如果碰到无法重写的接口,比如abp默认没有写'virtual'我们无法'override'。

    如果是接口我们可以用'[RemoteService]'新隐藏所有接口,然后单独给想暴露的接口打开true,无法'override'的接口就写个新的暴露出来.

    当然你也可以更加暴力一点

     public override void PostConpServices(ServiceConfigurationContext context)
            {
                context.Services.Replace(new ServiceDescriptor(typeof(IAbpTenantAppService), typeof(RmsTenantAppService), ServiceLifetime.Scoped));
                base.PostConpServices(context);
            }
    

    结语

    也欢迎大家阅读我的Abp vNext系列教程

    联系作者:加群:867095512 @MrChuJiu

    特别声明:本站部分内容收集于互联网是出于更直观传递信息的目的。该内容版权归原作者所有,并不代表本站赞同其观点和对其真实性负责。如该内容涉及任何第三方合法权利,请及时与824310991@qq.com联系,我们会及时反馈并处理完毕。