Esempio n. 1
0
        public void Apply(ControllerModel controller)
        {
            if (controller.ControllerType.GetGenericTypeDefinition() == typeof(GenericDynamicModuleController <>))
            {
                var entityType = controller.ControllerType.GenericTypeArguments[0];

                controller.ControllerName = DynamicModuleControllerNameDecorator.GetControllerName(entityType);
            }
        }
        public void PopulateFeature(IEnumerable <ApplicationPart> parts, ControllerFeature feature)
        {
            var dynamicModuleGenericController = typeof(GenericDynamicModuleController <>);

            foreach (var moduleContext in m_moduleContexts)
            {
                var typeName = DynamicModuleControllerNameDecorator.GetControllerName(moduleContext.ModuleConfigurationManager.ViewModelType);

                if (feature.Controllers.All(t => t.Name != typeName))
                {
                    feature.Controllers.Add(
                        dynamicModuleGenericController
                        .MakeGenericType(moduleContext.ModuleConfigurationManager.ViewModelType)
                        .GetTypeInfo()
                        );
                }
            }
        }