using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Util.Aop; using Util.Data.Dapper.Sql; using Util.Data.EntityFrameworkCore; using Util.Helpers; using Util.Logging.Serilog; using Util.Sessions; using Util.Tests.Infrastructure; using Util.Tests.UnitOfWorks; using Xunit.DependencyInjection.Logging; namespace Util.Data.Dapper.Tests { /// /// 启动配置 /// public class Startup { /// /// 配置主机 /// public void ConfigureHost( IHostBuilder hostBuilder ) { Environment.SetDevelopment(); hostBuilder.ConfigureDefaults( null ) .AsBuild() .AddAop() .AddSerilog() .AddOracleSqlQuery( Config.GetConnectionString( "connection" ) ) .AddOracleSqlExecutor( Config.GetConnectionString( "connection" ) ) .AddOracleUnitOfWork( Config.GetConnectionString( "connection" ) ) .AddUtil(); } /// /// 配置服务 /// public void ConfigureServices( IServiceCollection services ) { services.AddLogging( logBuilder => logBuilder.AddXunitOutput() ); services.AddSingleton(); InitDatabase( services ); } /// /// 初始化数据库 /// private void InitDatabase( IServiceCollection services ) { var unitOfWork = (OracleUnitOfWork)services.BuildServiceProvider().GetService(); unitOfWork.EnsureDeleted(); unitOfWork.EnsureCreated(); } } }