public void CreateInstance_CreatesFilter() { // Arrange var property = typeof(StringController).GetProperty(nameof(StringController.StringProp)); var lifecycleProperties = new[] { new LifecycleProperty(property, "key") }; var factory = new ControllerSaveTempDataPropertyFilterFactory(lifecycleProperties); // Act var filter = factory.CreateInstance(CreateServiceProvider()); // Assert var tempDataFilter = Assert.IsType <ControllerSaveTempDataPropertyFilter>(filter); Assert.Same(lifecycleProperties, tempDataFilter.Properties); }
/// <inheritdoc /> public void OnProvidersExecuting(ApplicationModelProviderContext context) { if (context == null) { throw new ArgumentNullException(nameof(context)); } foreach (var controllerModel in context.Result.Controllers) { var modelType = controllerModel.ControllerType.AsType(); var tempDataProperties = SaveTempDataPropertyFilterBase.GetTempDataProperties(_tempDataSerializer, modelType); if (tempDataProperties == null) { continue; } var filter = new ControllerSaveTempDataPropertyFilterFactory(tempDataProperties); controllerModel.Filters.Add(filter); } }