- Скачиваем расширение Microsoft.Extensions.DependencyInjection
- пишем такой кодик
namespace Presence.Desktop.DI
{
public static class ServiceCollectionExtensions
{
public static void AddCommonService(this IServiceCollection collection)
{
collection
.AddDbContext()
.AddSingleton()
.AddTransient()
.AddTransient();
}
}
}
И App.axaml
namespace Presence.Desktop
{
public partial class App : Application
{
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
}
public override void OnFrameworkInitializationCompleted()
{
var serviceCollection = new ServiceCollection();
serviceCollection.AddCommonService();
var services = serviceCollection.BuildServiceProvider();
var mainViewModel = services.GetRequiredService();
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
desktop.MainWindow = new MainWindow()
{
DataContext = mainViewModel,
};
}
base.OnFrameworkInitializationCompleted();
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/792 ... lonia-guys