为 MediatR.IRequestHandler 类型的请求构造处理程序时出错

问题描述 投票:0回答:1

我在处理程序中收到 mediatr 错误,我在

Startup.cs
中添加了依赖项,但我仍然遇到上述错误,我有 AddInfoRequestHandler,它具有以下构造函数参数

public class AddInfoRequestHandler : IRequestHandler<AddInfoRequest, ResponseBase>
    {
        private Repository Repository { get; set; }
        private InfoUtility InfoUtility { get; set; }

        public AddInfoRequestHandler(Repository repository, InfoUtility infoUtility)
        {
            Repository = repository;
            InfoUtility = infoUtility;
        }


    public class InfoUtility
        {
            private IRepository Repository { get; set; }
            private string ConnectionString { get; set; }
    
            public InfoUtility(IRepository repository, string connectionString)
            {
                Repository = repository;
                ConnectionString = connectionString;
            }

Startup.cs
添加了以下代码

 services.For<IRequestHandler<AddInfoRequest, ResponseBase>>()
                .Use<AddInfoRequestHandler>()

 services.For<InfoUtility>()
                .Use<InfoUtility>()
                .Ctor<string>("ConnectionString")
                .Is(x => x.GetInstance<IConfiguration>().GetConnectionString("Info"));

任何人都可以告诉我在这里添加依赖项有什么问题吗

c# dependency-injection mediatr mediator
1个回答
0
投票

我想注册一下

services.AddMediatR(cfg => cfg.RegisterServicesFromAssemblies(typeof(AddInfoRequestHandler).Assembly)); 

适用于 7.0 网版

© www.soinside.com 2019 - 2024. All rights reserved.