我有一系列判断数据的服务,都在"IDataCheck"界面下.
IDataChecks是一个空接口,只有一个方法"runCheckAsync"
在命令行应用程序中,我执行以下操作:
IEnumerable<IDataCheck>? services = _serviceProvider.GetServices<IDataCheck>();
foreach (IDataCheck? s in services)
{
DataCheckResult result = await s.RunCheckAsync();
// all kinds of stuff with the result such as proposing to autofix
}
我现在还想在asp中显示这些判断的结果.net core healtchecks还使用healthcheck ui,参考:
- https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/health-checks?view=aspnetcore-6.0
- https://github.com/Xabaril/AspNetCore.Diagnostics.HealthChecks
我不想 for each 数据判断手动创建一个healthcheck,因为否则拥有一个接口的用处就没有了
我也不想只创建一个healthcheck,否则它将在ui中的一个纯文本列中生成一长串结果,因为它不支持任何格式.