如果不用现成的依赖注入框架和包,你可以手动实现依赖注入。以下是一个手动实现依赖注入的示例,包括了配置依赖关系和注入属性。
### 1. 手动配置依赖关系
首先,你需要一个简单的依赖注入容器来管理服务的创建和生命周期。这里是一个非常简化的版本:
csharp
public class SimpleContainer
{
private readonly Dictionary<Type, Func<object>> _registrations = new Dictionary<Type, Func<object>>();public void Register<TService>(Func<TService> factory)
{
_registrations[typeof(TService)] = () => factory();
}public TService Resolve<TService>()
{
return (TService)_registrations[typeof(TService)]();
}
}
2. 配置和使用手动的依赖注入容器
在应用程序启动时配置依赖关系并进行注入:
using System;
using System.Windows;
using Zhaoxi.BMS.ViewModels;
using Zhaoxi.BMS.Base;namespace Zhaoxi.BMS
{
public partial class App : Application
{
public static SimpleContainer Container { get; private set; }protected override void OnStartup(StartupEventArgs e)
&nbs

最低0.47元/天 解锁文章
109

被折叠的 条评论
为什么被折叠?



