我有一个Asp.net Core 2.2应用程序,我正在尝试升级到3.0。我正在使用Mediatr,现在升级到3.0后出现此错误
验证服务描述符'ServiceType:System.ICloneable生存期:临时实现类型: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中有效,但是由于错误,现在我什至无法启动该程序。有人可以告诉我们出什么问题了吗?
答案 0 :(得分:1)
禁用验证范围。
// Program.cs
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseDefaultServiceProvider(options => options.ValidateScopes = false) // <<<<<<<<<<<
.Build();