private void ConfigureSelector(ControllerModel controller, DynamicWebApiAttribute controllerAttr)
        {
            if (controller.Selectors.Any(selector => selector.AttributeRouteModel != null))
            {
                return;
            }

            var areaName = string.Empty;

            if (controllerAttr != null)
            {
                areaName = controllerAttr.Module;
            }

            if (string.IsNullOrEmpty(areaName))
            {
                areaName = AppConsts.DefaultAreaName;
            }

            foreach (var action in controller.Actions)
            {
                if (!CheckNoMapMethod(action))
                {
                    ConfigureSelector(areaName, controller.ControllerName, action);
                }
            }
        }
Beispiel #2
0
        public static IPlugin LoadDynamicWebApiAttribute(this IPlugin pluginObj, DynamicWebApiAttribute attrObj)
        {
            //后续优化改用反射对应加载同名属性

            //  pluginObj.PluginID = attrObj.PluginID;
            pluginObj.PluginName  = attrObj.PluginName;
            pluginObj.Description = attrObj.Description;
            pluginObj.Order       = attrObj.Order;
            return(pluginObj);
        }
Beispiel #3
0
 protected virtual void ConfigureArea(ControllerModel controller, DynamicWebApiAttribute attr)
 {
     Check.NotNull(attr, nameof(attr));
     if (!controller.RouteValues.ContainsKey("area"))
     {
         if (!string.IsNullOrEmpty(attr.AreaName))
         {
             controller.RouteValues["area"] = attr.AreaName;
         }
     }
 }
Beispiel #4
0
        private void ConfigureArea(ControllerModel controller, DynamicWebApiAttribute attr)
        {
            if (attr == null)
            {
                throw new ArgumentException(nameof(attr));
            }

            if (!controller.RouteValues.ContainsKey("area"))
            {
                if (!string.IsNullOrEmpty(attr.Module))
                {
                    controller.RouteValues["area"] = attr.Module;
                }
                else if (!string.IsNullOrEmpty(AppConsts.DefaultAreaName))
                {
                    controller.RouteValues["area"] = AppConsts.DefaultAreaName;
                }
            }
        }
Beispiel #5
0
        private void ConfigureSelector(ControllerModel controller, DynamicWebApiAttribute controllerAttr)
        {
            if (controller.Selectors.Any(selector => selector.AttributeRouteModel != null))
            {
                return;
            }

            var areaName = string.Empty;

            if (controllerAttr != null)
            {
                areaName = controllerAttr.Module;
            }

            foreach (var action in controller.Actions)
            {
                ConfigureSelector(areaName, controller.ControllerName, action);
            }
        }
Beispiel #6
0
        private void ConfigureSelector(ControllerModel controller, DynamicWebApiAttribute attr)
        {
            RemoveEmptySelectors(controller.Selectors);

            if (controller.Selectors.Any(s => s.AttributeRouteModel != null))
            {
                return;
            }
            var areaName = string.Empty;

            if (attr != null)
            {
                areaName = attr.AreaName;
            }
            foreach (var action in controller.Actions)
            {
                ConfigureSelector(areaName, controller.ControllerName, action);
            }
        }
Beispiel #7
0
 private void ConfigureDynamicWebApi(ControllerModel controller, DynamicWebApiAttribute controllerAttr)
 {
     ConfigureApiExplorer(controller);
     ConfigureSelector(controller, controllerAttr);
     ConfigureParameters(controller);
 }
Beispiel #8
0
 private void ConfigureApplicationService(ControllerModel controller, DynamicWebApiAttribute attr)
 {
     ConfigureApiExplorer(controller);
     ConfigureSelector(controller, attr);
     ConfigureParameters(controller);
 }