AddMvc 源码
GitHub:Microsoft.AspNetCore.Mvc/MvcServiceCollectionExtensions.cs
/// <summary>/// Adds MVC services to the specified <see cref="IServiceCollection" />./// </summary>/// <param name="services">The <see cref="IServiceCollection" /> to add services to.</param>/// <returns>An <see cref="IMvcBuilder"/> that can be used to further configure the MVC services.</returns>public static IMvcBuilder AddMvc(this IServiceCollection services){if (services == null){throw new ArgumentNullException(nameof(services));}var builder = services.AddMvcCore();builder.AddApiExplorer();builder.AddAuthorization();AddDefaultFrameworkParts(builder.PartManager);// Order added affects options setup order// Default framework orderbuilder.AddFormatterMappings();builder.AddViews();builder.AddRazorViewEngine();builder.AddRazorPages();builder.AddCacheTagHelper();// +1 orderbuilder.AddDataAnnotations(); // +1 order// +10 orderbuilder.AddJsonFormatters();builder.AddCors();return new MvcBuilder(builder.Services, builder.PartManager);}
注:参考源码,如下配置就能在 AddMvcCore 时支持 JsonFormatters 了。
public void ConfigureServices(IServiceCollection services){services.AddMvcCore().AddJsonFormatters();}
