using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.TestHost; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Util.Http; using Xunit.DependencyInjection.Logging; namespace Util.Localization; /// /// 启动配置 /// public class Startup { /// /// 配置主机 /// public void ConfigureHost( IHostBuilder hostBuilder ) { hostBuilder.ConfigureDefaults( null ) .ConfigureWebHostDefaults( webHostBuilder => { webHostBuilder.UseTestServer() .Configure( t => { t.UseRouting(); t.UseEndpoints( endpoints => { endpoints.MapControllers(); } ); } ); } ) .AsBuild() .AddJsonLocalization() .AddUtil(); } /// /// 配置服务 /// public void ConfigureServices( IServiceCollection services ) { services.AddLogging( logBuilder => logBuilder.AddXunitOutput() ); services.AddControllers(); services.AddTransient( t => { var client = new HttpClientService(); client.SetHttpClient( t.GetService().GetTestClient() ); return client; } ); } }