小编Mar*_*amp的帖子

为什么不注入 IServiceProvider 而不是每个单独的依赖项?

我想知道为什么不显式使用 IServiceProvider 来解决依赖项而不是单独注入每个依赖项。换句话说,为什么要使用这种方法:

public class A 
{
    private B _b;
    private C _c;
    private D _d;
    private E _e;

    public A(B b, C c, D d, E e)
    {
        _b = b;
        _c = c;
        _d = d;
        _e = e;
    }
}
Run Code Online (Sandbox Code Playgroud)

而不是这个:

public class A 
{
    private B _b;
    private C _c;
    private D _d;
    private E _e;

    public A(IServiceProvider sp)
    {
        _b = (b) sp.GetService(typeof(b));
        _c = (c) sp.GetService(typeof(c));
        _d = (d) sp.GetService(typeof(d));
        _e = (e) sp.GetService(typeof(e)); …
Run Code Online (Sandbox Code Playgroud)

c# dependency-injection .net-core

8
推荐指数
1
解决办法
1270
查看次数

标签 统计

.net-core ×1

c# ×1

dependency-injection ×1