first edit
This commit is contained in:
49
XLIMS.SERVICES/XLimsServicesDI.cs
Normal file
49
XLIMS.SERVICES/XLimsServicesDI.cs
Normal file
@@ -0,0 +1,49 @@
|
||||
using System.Configuration;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using System.IO;
|
||||
using XLIMS.DATA.Models;
|
||||
using XLIMS.CONTRACT;
|
||||
using XLIMS.SERVICES;
|
||||
|
||||
namespace Microsoft.Extensions.DependencyInjection
|
||||
{
|
||||
public static class XLimsServicesDI
|
||||
{
|
||||
public static IServiceCollection AddXLimsServices(this IServiceCollection services)
|
||||
{
|
||||
var configuration = new ConfigurationBuilder()
|
||||
.SetBasePath(Directory.GetCurrentDirectory())
|
||||
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
|
||||
.Build();
|
||||
|
||||
// Регистрируем DbContext с использованием строки из конфига
|
||||
services.AddDbContext<LimsdbContext>(options =>
|
||||
{
|
||||
var connectionString = configuration.GetConnectionString("DefaultConnection");
|
||||
options.UseSqlServer(connectionString);
|
||||
// Опционально: логирование запросов в Debug
|
||||
// options.LogTo(Console.WriteLine, LogLevel.Information);
|
||||
});
|
||||
|
||||
// Остальные сервисы
|
||||
// Фасад
|
||||
services.AddScoped<ILimsService, LimsService>();
|
||||
|
||||
// Сервисы
|
||||
services.AddSingleton<IDialogService, DialogService>();
|
||||
|
||||
// ViewModel'и
|
||||
services.AddTransient<XLIMS.PSV.ViewModels.MainViewModel>();
|
||||
services.AddTransient<XLIMS.SP.ViewModels.MainViewModel>();
|
||||
services.AddTransient<XLIMS.TPRZ.ViewModels.MainViewModel>();
|
||||
services.AddTransient<XLIMS.DEV.ViewModels.MainViewModel>();
|
||||
|
||||
// Сохраняем конфигурацию (если понадобится в других местах)
|
||||
services.AddSingleton<IConfiguration>(configuration);
|
||||
return services;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user