将通用接口注入非通用集线器类

时间:2018-09-05 22:30:54

标签: c# dependency-injection


我有一个通用接口:

public interface IExceptionsDistinguisherService<T> where T : class
{
    void CheckNullAction(T action);
}

我想将其注入非通用集线器类:

public class ActionHub : IActionHub
{
    //some fields declarations
    private readonly IExceptionsDistinguisherService<T> _exceptionsDistinguisherService;

    public ActionHub(/*other parameters,*/
    IExceptionsDistinguisherService<T> exceptionsDistinguisherService;
    )
    {
        //...
        _exceptionsDistinguisherService = exceptionsDistinguisherService;
    }

    public Result<TOutput> Execute<TAction, TOutput>(TAction action)
    {
        _exceptionsDistinguisherService.CheckNullAction(action);
        //... other stuff
    }
    //... other stuff
}

问题是我发现的每个示例性解决方案都依赖于预定义类,该类在注入期间用作属性。
在我的情况下,其目的是随后在每个单独的Handler中定义类,但是我被困在这里。如果这是重复的操作,希望您能向我展示该主题,因为我显然没有在问正确的问题,

我已经没有足够的想法来正确注入此接口了,我很乐意使用一些帮助。

0 个答案:

没有答案