This commit is contained in:
2026-03-25 14:55:34 +08:00
commit 2c44b3a4b2
131 changed files with 7453 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
using FileSignatures;
using FileSignatures.Formats;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using StopShopping.EF;
using StopShopping.Services;
using StopShopping.Services.Extensions;
using StopShopping.Services.Implementions;
namespace Microsoft.Extensions.DependencyInjection;
public static class ServicesExtensions
{
public static IServiceCollection AddServices(
this IServiceCollection services,
Action<DbContextOptionsBuilder> dbContextOptions,
IConfiguration appOptions,
IConfiguration openPlatformOptions)
{
services.AddDbContext<StopShoppingContext>(dbContextOptions);
services.Configure<AppOptions>(appOptions);
var imageFormats = FileFormatLocator.GetFormats().OfType<Image>();
var imageInspector = new FileFormatInspector(imageFormats);
services.AddSingleton<IFileFormatInspector>(imageInspector);
services.AddSingleton<ICipherService, CipherService>();
services.AddSingleton<ISerialNoGenerator, NanoidSerialNoGenerator>();
services.AddScoped<IDistrictService, DistrictService>();
services.AddScoped<IClaimsService, ClaimsService>();
services.AddScoped<IFileService, FileService>();
services.AddScoped<IAccessTokenService, AccessTokenService>();
services.AddScoped<IUserService, UserService>();
services.AddScoped<ICategoryService, CategoryService>();
services.AddScoped<IProductService, ProductService>();
services.AddScoped<IRequestService, RequestService>();
services.AddScoped<IReplyService, ReplyService>();
services.AddOpenPlatformServices(openPlatformOptions);
return services;
}
}