Chr*_*son 2 c# asp.net-core .net-5 .net-6.0
我有一个单元测试,它使用以下内容来完全验证所有依赖项注入配置:
public class StartupTests
{
public void ConfigurationIsValid()
{
var host = Program.CreateHostBuilder(Array.Empty<string>())
.UseDefaultServiceProvider(
(_, options) =>
{
options.ValidateOnBuild = true;
options.ValidateScopes = true;
});
var action = () => host.Build();
action.Should().NotThrow();
}
}
Run Code Online (Sandbox Code Playgroud)
当使用 .NET 5IHostBuilder时,这很有效Host.CreateDefaultBuilder(),但我试图找到该方法在 .NET 6 中引入的UseDefaultServiceProvider()新方法中的位置。WebApplicationBuilder
此方法是 .NET 6 中属性的扩展WebApplicationBuilder.Host。
更新后的单元测试如下所示:
public void ConfigurationIsValid()
{
var builder = Program.CreateHostBuilder(Array.Empty<string>());
builder.Host.UseDefaultServiceProvider(
(_, options) =>
{
options.ValidateOnBuild = true;
options.ValidateScopes = true;
});
var action = () => builder.Build();
action.Should().NotThrow();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1478 次 |
| 最近记录: |