public DynamicIndexViewModel Build(DynamicEntityMetadata dynamicEntityMetadata) { var dynamicIndexViewModel = new DynamicIndexViewModel(); var routeValueDictionary = _requestManager.QueryStringDictionary; _requestManager.CorrectQuerystringTypes(dynamicEntityMetadata); dynamicIndexViewModel.RouteValueDictionaryWrapper = routeValueDictionary; dynamicIndexViewModel.Header = dynamicEntityMetadata.IndexHeader(); dynamicIndexViewModel.TypeName = dynamicEntityMetadata.TypeName(); dynamicIndexViewModel.FilterMessage = _dynamicFilterManager.GetFilterMessage(dynamicEntityMetadata, routeValueDictionary); var filters = _dynamicFilterManager.GetFilterPropertyViewModels(dynamicEntityMetadata, routeValueDictionary).ToList(); dynamicIndexViewModel.DynamicIndexFiltersViewModel = new DynamicIndexFiltersViewModel(dynamicEntityMetadata.TypeName(), routeValueDictionary, filters); return(dynamicIndexViewModel); }