Exemplo n.º 1
0
        /// <summary>
        /// Calls the GetIndexFilterOptions on the ViewBuilder and returns the results
        /// </summary>
        /// <param name="controller"></param>
        /// <param name="modelName">The Fully Qualified Assembly Name of the model</param>
        /// <param name="viewBuilder">An ICrudViewBuilder implementation</param>
        /// <param name="visitors">Any IFilterOptionVisitors to be passed to the ViewBuilder</param>
        /// <returns></returns>
        public static IEnumerable <FilterOption> GetFilterOptions(this IIndexController controller,
                                                                  string modelName,
                                                                  ICrudViewBuilder viewBuilder,
                                                                  params IFilterOptionVisitor[] visitors)
        {
            var modelType = Type.GetType(modelName, false, true);

            var buildIndexMethod = viewBuilder.GetType().GetMethod("GetIndexFilterOptions");
            var genericMethod    = buildIndexMethod.MakeGenericMethod(modelType);

            var filterOptions = genericMethod.Invoke(viewBuilder, new object[] { visitors }) as IEnumerable <FilterOption>;

            return(filterOptions);
        }
Exemplo n.º 2
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="viewBuilder">The viewBuilder to retrieve the view models from</param>
 public IndexController(ICrudViewBuilder viewBuilder)
 {
     _viewBuilder = viewBuilder;
 }
Exemplo n.º 3
0
 public CrudController(ICrudViewBuilder viewBuilder,
                       IRepositoryFactory repositoryFactory)
 {
     Builder    = viewBuilder;
     Repository = repositoryFactory.Get <T>();
 }
Exemplo n.º 4
0
 public TestEntitiesController(ICrudViewBuilder viewBuilder, IRepositoryFactory factory)
     : base(viewBuilder, factory)
 {
 }
 public CrudModelsController(ICrudViewBuilder viewBuilder, IRepositoryFactory repositoryFactory)
     : base(viewBuilder, repositoryFactory)
 {
 }