using Microsoft.Extensions.DependencyInjection; using Panda.DynamicWebApi; namespace IRaCIS.Core.API { public static class DynamicWebApiSetup { //20210910 避免冗余的控制器层代码编写,仅仅包了一层前后台定义的格式 这里采用动态webAPi+IResultFilter 替代大部分情况 public static void AddDynamicWebApiSetup(this IServiceCollection services) { //动态webApi 目前存在的唯一小坑是生成api上服务上的动态代理AOP失效 间接掉用不影响 services.AddDynamicWebApi(dynamicWebApiOption => { //默认是 api dynamicWebApiOption.DefaultApiPrefix = ""; //首字母小写 dynamicWebApiOption.GetRestFulActionName = (actionName) => char.ToLower(actionName[0]) + actionName.Substring(1); //删除 Service后缀 dynamicWebApiOption.RemoveControllerPostfixes.Add("Service"); }); } } }