forked from amkovkov/GranuSightSoftware2
36 lines
1.3 KiB
C#
36 lines
1.3 KiB
C#
using Microsoft.Extensions.DependencyInjection;
|
|
using Microsoft.Extensions.Logging;
|
|
|
|
using GSS2.UI.Core.ViewModels;
|
|
using GSS2.UI.Core.Services;
|
|
using GSS2.Views;
|
|
using GSS2.ViewModels;
|
|
using GSS2.ViewModels.Common;
|
|
using GSS2.ViewModels.AmineContent;
|
|
|
|
namespace GSS2;
|
|
|
|
public static class DependencyInjectionHelper
|
|
{
|
|
public static IServiceCollection AddViewsAndModels(this IServiceCollection services) =>
|
|
services
|
|
.AddSingleton<DependencyInjectionViewLocator>((services) =>
|
|
new DependencyInjectionViewLocator(
|
|
services.GetRequiredService<ILogger<DependencyInjectionViewLocator>>(),
|
|
services
|
|
)
|
|
)
|
|
.AddSingleton<NavigationService>((_) => new NavigationService(Application.Current?.ApplicationLifetime))
|
|
.AddSingleton<MainWindowViewModel>()
|
|
.AddSingleton<MainView>()
|
|
.AddSingleton<MainViewModel>()
|
|
.AddSingleton<AmineContentView>()
|
|
.AddSingleton<AmineContentViewModel>()
|
|
.AddSingleton<SystemViewModel>()
|
|
.AddSingleton<StartViewModel>()
|
|
.AddSingleton<AnalysisViewModel>()
|
|
.AddSingleton<ResultsViewModel>()
|
|
.AddSingleton<SampleCalibrationViewModel>()
|
|
.AddSingleton<SeparatorCalibrationViewModel>();
|
|
}
|