c# - 在 MSBuild 配置文件中指定记录器

标签 c# logging msbuild

我为我的 MSBuild 进程编写了一些自定义记录器,它在命令行中工作正常:

msbuild <project> /logger:mylogger.dll

现在的问题是我应该如何在 .csproj 文件中指定自定义记录器,以便当我从 Visual Studio 构建时,我的自定义记录器的使用方式与从命令行运行 msbuild 时使用它的方式相同。

我还没有找到任何可以做到这一点的东西herehere .

最佳答案

这是不可能的。在 MSBuild API 中,RegisterLogger必须在构建开始之前调用。当构建已经进行时,您不应该更改构建配置。您也许可以通过创建自定义 MSBuild 任务来解决此问题,该任务在构建中间添加一个新的记录器,但这会产生比它解决的问题更多的问题,因为记录器配置是每个构建引擎,而不是每个项目,所以当您添加/remove loggers,所有参与构建的项目都会受到影响。

关于c# - 在 MSBuild 配置文件中指定记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38708356/

相关文章:

Java保留对象的实例并保留对象的索引

logging - 使用企业库进行日志记录的模式

asp.net - 无法将 msdeploy web 包复制到临时文件夹吗?

tfs - TFS CI构建-构建成功后更新自定义定义变量

c# - 如何为 VS2012 C# 项目执行自定义构建步骤?

c# - SmtpClient - 发送到不同的域

c# - 仅在 EF Core 中的 Scaffold-DbContext 存储过程

c# - 无法首先使用 Postgresql 和 Entity Framework 代码在 PostgreSQL 中创建数据库

php - 如何打印调试日志?

java - 如何配置 log4j.properties 文件以打印进行日志记录的类的父类?