-
Notifications
You must be signed in to change notification settings - Fork 0
/
App.xaml.cs
34 lines (33 loc) · 1.14 KB
/
App.xaml.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
using DovizKuru.services;
using DovizKuru.services.implementations;
using DovizKuru.viewmodels;
using Microsoft.Extensions.DependencyInjection;
using System;
using System.Windows;
namespace DovizKuru
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
public App()
{
ServiceProvider = ConfigureServices();
this.InitializeComponent();
}
private static IServiceProvider ConfigureServices()
{
var services = new ServiceCollection();
services.AddSingleton<MainViewModel>();
services.AddSingleton<IWindowService, WindowService>();
services.AddSingleton<ILogService, LogService>();
services.AddSingleton<IWebService, WebService>();
services.AddSingleton<IPreferenceService, PreferenceService>();
services.AddSingleton<IMediaService, MediaService>();
return services.BuildServiceProvider();
}
public IServiceProvider ServiceProvider { get; }
public new static App Current => (App)Application.Current;
}
}