首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何覆盖AbpUserConfigurationController?

如何覆盖AbpUserConfigurationController?
EN

Stack Overflow用户
提问于 2018-08-14 11:52:58
回答 1查看 583关注 0票数 0

我不知道AbpUserConfigurationController的基本原理?它是如何注入到aspnet核心DI容器中的?为什么不能在Swagger页面上看到?我正在使用aspnetboilerplate高级启动模板。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-15 17:36:22

覆盖AbpUserConfigurationController

您可以使用aspnetboilerplate/#3296(评论)中提到的方法

以了解Abp如何将控制器注入AspNetCore项目

@曾解释,控制器可以通过AddApplicationPart of ApplicationPartManager添加。

有几个地方,总部基地使用ApplicationPartManager包括额外的控制器。

  1. Abp.AspNetCore中,正如@曾所指出的,在AbpAspNetCoreModule#L47-78中,实现包括在Abp.AspNetCore程序集中创建的Controller。
  2. 在下载的模板中,可以在*WebCoreModule.cs项目下查找*.*.Web.Core。下面的代码片段是Abp将MyProjectApplicationModule程序集中的所有应用程序服务转换为控制器的另一个地方。
代码语言:javascript
复制
Configuration.Modules.AbpAspNetCore()
      .CreateControllersForAppServices(
          typeof(MyProjectApplicationModule).GetAssembly()
      );

此外,您还可以查看AbpAspNetCoreConfigur.cs#L47-L55,其中正在更新ControllerAssemblySettings

注意,CreateControllersForAppServicesPreInitialize() of AbpModule中被调用,AddApplicationPartsPostInitialize() of AbpAspNetCoreModule中被调用。

因此,在方法ControllerAssemblySettings of AbpAspNetCoreModule中使用的AbpAspNetCoreModule已经包含了要通过ApplicationPartManager添加的所有控制器。

理解为什么AbpUserConfigurationController 没有出现在swagger-ui中的原因

简而言之,Swagger不支持传统路由,请参阅斯巴什巴克尔-像素探险家路由

TokenAuthController出现在swagger-ui中,因为它是用[Route("api/[controller]/[action]")] (属性路由)修饰的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51840788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档