using SqlSugar;
namespace Microsoft.Extensions.DependencyInjection
{
///
/// SqlSugar 拓展类
///
public static class SqlSugarServiceCollectionExtensions
{
///
/// 添加 SqlSugar 拓展
///
///
///
///
///
public static IServiceCollection AddSqlSugar(this IServiceCollection services, ConnectionConfig config, Action buildAction = default)
{
return services.AddSqlSugar(new ConnectionConfig[] { config }, buildAction);
}
///
/// 添加 SqlSugar 拓展
///
///
///
///
///
public static IServiceCollection AddSqlSugar(this IServiceCollection services, ConnectionConfig[] configs, Action buildAction = default)
{
// 注册 SqlSugar 客户端
services.AddScoped(u =>
{
var sqlSugarClient = new SqlSugarClient(configs.ToList());
buildAction?.Invoke(sqlSugarClient);
return sqlSugarClient;
});
services.AddScoped(u =>
{
var tenant = new SqlSugarClient(configs.ToList());
buildAction?.Invoke(tenant);
return tenant;
});
// 注册非泛型仓储
services.AddScoped();
// 注册 SqlSugar 仓储
services.AddScoped(typeof(ISqlSugarRepository<>), typeof(SqlSugarRepository<>));
return services;
}
}
}