我正在尝试循环访问 Azure DevOps YAML 管道中的用户定义变量。
变量已通过 UI 创建:
在我正在使用的 YAML 管道代码下方:
trigger:
- dev
- main
pr:
- dev
pool:
vmImage: ubuntu-latest
stages:
- stage:
jobs:
- job: TestVars
steps:
- ${{ each var in variables }}:
- script: |
echo ${{ var.key }}
echo ${{ var.value }}
displayName: ${{ var.key }}
Run Code Online (Sandbox Code Playgroud)
当运行上述管道时,仅列出系统和构建变量(例如system、system.hostType、build.queuedBy等)。
任何循环用户定义变量的帮助将不胜感激。
我在Visual Studio 2019 Preview 2.2中使用默认模板创建了ASP.NET Core 3.0 Web应用程序,并尝试在启动中注入ILogger:
namespace WebApplication1
{
public class Startup
{
private readonly ILogger _logger;
public Startup(IConfiguration configuration, ILogger<Startup> logger)
{
Configuration = configuration;
_logger = logger;
}
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
在Program.cs中,我还调用ConfigureLogging()方法:
namespace WebApplication1
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureLogging((hostingContext, logging) =>
{
logging.AddConfiguration(hostingContext.Configuration.GetSection("Logging"));
logging.ClearProviders();
logging.AddConsole();
})
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
}
}
Run Code Online (Sandbox Code Playgroud)
它在ASP.NET Core 2.x中工作,但在ASP.NET Core 3中失败,并显示以下错误:
System.InvalidOperationException: …Run Code Online (Sandbox Code Playgroud) c# asp.net-core razor-pages visual-studio-2019 asp.net-core-3.0