/// <summary> /// Configures Newtonsoft.Json specific features such as input and output formatters. /// </summary> /// <param name="builder">The <see cref="IMvcBuilder"/>.</param> /// <returns>The <see cref="IMvcBuilder"/>.</returns> public static IMvcBuilder AddNewtonsoftJson(this IMvcBuilder builder) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } NewtonsoftJsonMvcCoreBuilderExtensions.AddServicesCore(builder.Services); return(builder); }
public void AddServicesCore_ReplacesDefaultTempDataSerializer() { // Arrange var services = new ServiceCollection() .AddSingleton <TempDataSerializer, DefaultTempDataSerializer>(); // Act NewtonsoftJsonMvcCoreBuilderExtensions.AddServicesCore(services); // Assert var tempDataSerializer = Assert.Single(services, d => d.ServiceType == typeof(TempDataSerializer)); Assert.Same(typeof(BsonTempDataSerializer), tempDataSerializer.ImplementationType); }
public void AddServicesCore_ReplacesDefaultJsonResultExecutor() { // Arrange var services = new ServiceCollection() .AddSingleton <IActionResultExecutor <JsonResult>, SystemTextJsonResultExecutor>(); // Act NewtonsoftJsonMvcCoreBuilderExtensions.AddServicesCore(services); // Assert var jsonResultExecutor = Assert.Single(services, d => d.ServiceType == typeof(IActionResultExecutor <JsonResult>)); Assert.Same(typeof(NewtonsoftJsonResultExecutor), jsonResultExecutor.ImplementationType); }
/// <summary> /// Configures Newtonsoft.Json specific features such as input and output formatters. /// </summary> /// <param name="builder">The <see cref="IMvcBuilder"/>.</param> /// <param name="setupAction">Callback to configure <see cref="MvcNewtonsoftJsonOptions"/>.</param> /// <returns>The <see cref="IMvcBuilder"/>.</returns> public static IMvcBuilder AddNewtonsoftJson( this IMvcBuilder builder, Action <MvcNewtonsoftJsonOptions> setupAction) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (setupAction == null) { throw new ArgumentNullException(nameof(setupAction)); } NewtonsoftJsonMvcCoreBuilderExtensions.AddServicesCore(builder.Services); builder.Services.Configure(setupAction); return(builder); }