asp.net-core - 尝试激活“MediatR.ServiceFactory”时无法解析“System.Object”类型的服务
问题描述
我有一个正在尝试升级到 3.0 的 Asp.net Core 2.2 应用程序。我正在使用 Mediatr,现在升级到 3.0 后出现此错误
验证服务描述符“ServiceType:System.ICloneable Lifetime:Transient ImplementationType:MediatR.ServiceFactory”时出错:尝试激活“MediatR.ServiceFactory”时无法解析“System.Object”类型的服务。
这是我在 Startup.cs 中的代码
services.AddMediatR(typeof(BlogPost));
我正在使用 Scrutor 进行扫描IMediator
services.Scan(scan => scan
.FromAssembliesOf(typeof(ISettingService), typeof(IMediator), typeof(BlogPost), typeof(IHomeHelper))
.AddClasses()
.UsingRegistrationStrategy(RegistrationStrategy.Skip)
.AsImplementedInterfaces()
.WithScopedLifetime());
上面的代码在 2.2 中工作,但现在由于错误,我什至无法启动程序。有人可以解释一下出了什么问题吗?
解决方案
禁用验证范围。
// Program.cs
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseDefaultServiceProvider(options => options.ValidateScopes = false) // <<<<<<<<<<<
.Build();
推荐阅读
- entity-framework - ef core - 多对多关系
- javascript - 当滚动间谍下拉菜单没有监视任何默认文本时,有没有办法更新它的文本?
- windows - FC 命令找不到现有目录
- c++ - 需要 C++ 索引队列数据结构
- c - 使用 rewind 或 fgets 使用大小为 8 的未初始化值
- unity3d - 统一广告在 Playstore 上不起作用但在测试中起作用?
- firebase - 在颤动中显示屏幕列表中的数据的方法是什么?
- java - 如何为不同的 API 获取不同的参数,如下所述
- python - 在 Jupyter 中由 Python 创建 .txt 文件的问题
- mysql - 如何配置 rails 控制台以显示执行 sql 的代码行?