如何在 MSBuild Target(Exec)中报告编译错误和编译警告

我曾经写过一篇文章 如何创建一个基于命令行工具的跨平台的 NuGet 工具包,通过编写一个控制台程序来参与编译过程。但是,相比于 基于 Task 的方式,可控制的因素还是太少了。

有没有什么办法能够让控制台程序也能与 MSBuild Target 之间发生更多的信息交换呢?比如报告编译错误和编译警告?答案是有的,通过格式化控制台输出。

Grid 布局算法!自己动手实现一个 Grid

Avalonia 是一款尚在开发中的基于 .NET Core 的跨平台 UI 框架。目前用在个人项目中还是不错的,不过还需要大家在开源社区中多多支持。

我为它写了一个全新的 Grid 布局算法,此算法是 WPF 在通常情况下的性能的两倍。本文将分享我在此项目中实现的算法的原理。

.NET/C# 建议的异常处理原则

“体验”一词早已泛滥却又能够粗略地表达开发团队对客户端产品的要求,“质量”在 卡诺模型(KANO Model) 中是“必备特性”——做得好了用户感觉不到,做得差一点儿用户就会破口大骂

本文将以提升客户端 GUI 产品质量为目标,谈谈 .NET/C# 中建议的异常处理方式。(如果想了解更具体的应该抛出什么异常,请前往我的另一篇文章 应该抛出什么异常? - 吕毅