最近更新
csharp 256
- WPF 像素着色器入门:使用 Shazzam Shader Editor 编写 HLSL 像素着色器代码 2023-05-22
- 如何更精准地设置 C# / .NET Core 项目的输出路径?(包括添加和删除各种前后缀) 2023-04-18
- 使用 Roslyn 分析代码注释,给 TODO 类型的注释添加负责人、截止日期和 issue 链接跟踪 2022-05-17
- 基于 Roslyn 同时为 Visual Studio 插件和 NuGet 包开发 .NET/C# 源代码分析器 Analyzer 和修改器 CodeFixProvider 2022-05-17
- Roslyn 入门:使用 Roslyn 静态分析现有项目中的代码(语法分析) 2022-05-17
- 一文看懂 .NET 的异常处理机制、原则以及最佳实践 2022-01-27
- 在 Windows 系统上降低 UAC 权限运行程序(从管理员权限降权到普通用户权限) 2022-01-27
- .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly) 2021-12-20
- Roslyn 入门:使用 .NET Core 版本的 Roslyn 编译并执行跨平台的静态的源码 2021-08-30
- C# 的事件,一般你不需要担心它的线程安全问题! 2021-06-18
- 从零开始制作 NuGet 源代码包(全面支持 .NET Core / .NET Framework / WPF 项目) 2021-06-07
- 编写你的专属 MSBuild C# 代码生成器:在保存文件时自动实时生成你的代码 2021-06-01
- WPF 制作高性能的透明背景异形窗口(使用 WindowChrome 而不要使用 AllowsTransparency=True) 2021-01-16
- 使用 Xamarin 在 iOS 真机上部署应用进行调试 2020-10-31
- 设置进程的 RedirectStandardOutput 重定向输出后,如果不将输出读出来,会卡死此进程 2020-08-04
- 从 “x is null 和 x == null” 的区别看 C# 7 模式匹配中常量和 null 的匹配 2020-06-16
- .NET/C# 使用 SetWindowsHookEx 监听鼠标或键盘消息以及此方法的坑 2020-06-13
- WPF / Windows Forms 检测窗口在哪个屏幕 2020-06-11
- 准确判断一个 WPF 控件 / UI 元素当前是否显示在屏幕内 2020-06-11
- Unity3D 入门:Unity 项目版本管理建议使用的 .gitignore 忽略文件和 .gitattributes 文件(2020年4月更新) 2020-06-01
- 杂谈 System.Drawing.Common 的跨平台性(关键词:libgdiplus / .NET Core / Mono / Win32 / Linux / ……) 2020-05-25
- Unity3D (Mono/IL2CPP) 中 P/Invoke 平台调用代码应该如何传委托 2020-05-24
- 如何在 Unity3D 场景中显示帧率(FPS) 2020-05-23
- Unity3D 入门:如何为游戏添加 UI 2020-05-23
- Unity3D 入门:为 Unity 的 C# 项目添加 dll 引用或安装 NuGet 包 2020-05-23
- Win32/C# 应用使用 PrintWindow 对窗口截图(PrintWindow) 2020-05-23
- Win32/C# 应用不依赖任何库使用纯 GDI+ 对窗口截图(BitBlt) 2020-05-23
- Win32/C# 应用使用 GDI+ 对窗口截图(BitBlt) 2020-05-23
- 提高使用 Visual Studio 开发效率的键盘快捷键 2020-05-23
- .NET/Windows:删除文件夹后立即判断,有可能依然存在 2020-05-15
- Unity3D 入门:安装 Unity3D 并配置与 Visual Studio 的协作开发环境 2020-05-05
- Unity3D 入门:在 Visual Studio 里使用 Visual Studio Tools for Unity 全套工具 2020-04-27
- Unity3D 入门:使用 Visual Studio 开发 Unity C# 脚本,说说根目录的那些 sln 和 csproj 文件 2020-04-27
- C# 可空引用类型 Nullable 更强制的约束:将警告改为错误 WarningsAsErrors 2020-04-23
- C# 8.0 如何在项目中开启可空引用类型的支持 2020-04-23
- C# 8.0 可空引用类型中的各项警告/错误的含义和示例代码 2020-04-23
- 通过子类化窗口(SubClass)来为现有的某个窗口添加新的窗口处理程序(或者叫钩子,Hook) 2020-04-14
- 当无边框窗口被子窗口遮挡导致难以调节窗口大小时,可通过处理 NCHITTEST 消息重新支持调节窗口大小 2020-04-11
- 推荐 .NET/C# 开发者安装的几款代码分析插件或对应的代码分析 NuGet 包 2020-03-23
- 为什么实现 .NET 的 ICollection 集合时需要实现 SyncRoot 属性?如何正确实现这个属性? 2020-01-28
- .NET 将多个程序集合并成单一程序集的 4+3 种方法 2020-01-10
- .NET 中选择合适的文件打开模式(CreateNew, Create, Open, OpenOrCreate, Truncate, Append) 2020-01-08
- Win32 方法 CreateFile 中选择合适的文件打开模式(CREATE_NEW, CREATE_ALWAYS, OPEN_EXISTING, OPEN_ALWAYS, TRUNCATE_EXISTING) 2020-01-08
- WPF 中如何创建忽略 DPI 属性的图片 2020-01-08
- 为什么不应该公开用来同步的加锁对象?为什么不应该 lock(this)/lock(string) 或者 lock 任何非私有对象? 2020-01-07
- 如何在旧版本的 .NET Core / Framework 中使用 C# 8 的异步流(IAsyncDisposable / IAsyncEnumerable / IAsyncEnumerator) 2020-01-03
- .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。 2020-01-03
- 如何在 .NET/C# 代码中安全地结束掉一个控制台应用程序?通过发送 Ctrl+C 信号来结束 2019-12-26
- 如何将一个 .NET 对象序列化为 HTTP GET 的请求字符串 2019-12-23
- 使用正则表达式尽可能准确匹配域名/网址 2019-12-09
- C# 8.0 的可空引用类型,不止是加个问号哦!你还有很多种不同的可空玩法 2019-12-08
- 一个简单的方法:截取子类名称中不包含基类后缀的部分 2019-12-08
- WPF 程序如何跨窗口/跨进程设置控件焦点 2019-11-27
- 解决关闭模态窗口后,父窗口居然失去焦点跑到了其他窗口的后面的问题 2019-11-05
- C#/.NET 当我们在写事件 += 和 -= 的时候,方法是如何转换成事件处理器的 2019-10-29
- 如何在 .NET 项目中开启不安全代码(以便启用 unsafe fixed 等关键字) 2019-10-29
- 不要在 C# 代码中写部分命名空间(要么不写,要么写全),否则会有源码兼容性问题 2019-10-29
- .NET/C# 在 64 位进程中读取 32 位进程重定向后的注册表 2019-10-22
- 解决 WPF 嵌套的子窗口在改变窗口大小的时候闪烁的问题 2019-10-22
- System.ComponentModel.Win32Exception (0x80004005): 无效的窗口句柄。 2019-10-22
- 将 Direct3D11 在 GPU 中的纹理(Texture2D)导出到内存(Map)或导出成图片文件 2019-10-22
- .NET 实现 NTFS 文件系统的硬链接 mklink /J(Junction) 2019-10-22
- WPF 高性能位图渲染 WriteableBitmap 及其高性能用法示例 2019-10-22
- 使用 .editorconfig 配置 .NET/C# 项目的代码分析规则的严重程度 2019-10-12
- 什么是模态窗口?本文带你了解模态窗口的本质 2019-10-10
- 直击本质:WPF 框架是如何实现模态窗口的 2019-10-10
- .NET/C# 检测电脑上安装的 .NET Framework 的版本 2019-10-10
- Windows 系统上用 .NET/C# 查找所有窗口,并获得窗口的标题、位置、尺寸、最小化、可见性等各种状态 2019-10-10
- 使用 SetWindowCompositionAttribute 来控制程序的窗口边框和背景(可以做 Acrylic 亚克力效果、模糊效果、主题色效果等) 2019-10-10
- WPF 程序如何移动焦点到其他控件 2019-09-19
- 使用 SetParent 制作父子窗口的时候,如何设置子窗口的窗口样式以避免抢走父窗口的焦点 2019-09-19
- .NET/C# 利用 Walterlv.WeakEvents 高性能地定义和使用弱事件 2019-09-18
- .NET 设计一套高性能的弱事件机制 2019-09-18
- .NET/C# 利用 Walterlv.WeakEvents 高性能地中转一个自定义的弱事件(可让任意 CLR 事件成为弱事件) 2019-09-18
- C#/.NET 中启动进程时所使用的 UseShellExecute 设置为 true 和 false 分别代表什么意思? 2019-09-17
- .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃 2019-09-12
- 如何在 WPF 中获取所有已经显式赋过值的依赖项属性 2019-09-12
- 在 WPF 中获取一个依赖对象的所有依赖项属性 2019-09-12
- .NET/C# 阻止屏幕关闭,阻止系统进入睡眠状态 2019-09-05
- WPF 不要给 Window 类设置变换矩阵(分析篇):System.InvalidOperationException: 转换不可逆。 2019-09-02
- WPF 不要给 Window 类设置变换矩阵(应用篇) 2019-09-02
- 通过设置启用 Visual Studio 默认关闭的大量强大的功能提升开发效率 2019-08-29
- C#/.NET 中 Thread.Sleep(0), Task.Delay(0), Thread.Yield(), Task.Yield() 不同的执行效果和用法建议 2019-08-29
- WPF 的 Application.Current.Dispatcher 中,为什么 Current 可能为 null 2019-08-27
- WPF 的 Application.Current.Dispatcher 中,Dispatcher 属性一定不会为 null 2019-08-27
- 使用 SetParent 跨进程设置父子窗口时的一些问题(小心卡死) 2019-08-27
- System.InvalidOperationException:“BuildWindowCore 无法返回寄宿的子窗口句柄。” 2019-08-14
- System.InvalidOperationException:“寄宿 HWND 必须是子窗口。” 2019-08-14
- System.InvalidOperationException:“寄宿的 HWND 必须是指定父级的子窗口。” 2019-08-14
- 如何创建一个基于 MSBuild Task 的跨平台的 NuGet 工具包 2019-08-07
- 如何创建一个基于命令行工具的跨平台的 NuGet 工具包 2019-08-07
- 通过 mklink 收集本地文件系统的所有 NuGet 包输出目录来快速调试公共组件代码 2019-08-04
- 使用 C# 中的 dynamic 关键字调用类型方法时可能遇到的各种问题 2019-08-04
- 设计一个 .NET 可用的弱引用集合(可用来做缓存池使用) 2019-08-04
- 如何为非常不确定的行为(如并发)设计安全的 API,使用这些 API 时如何确保安全 2019-08-03
- 通过 AppSwitch 禁用 WPF 内置的触摸让 WPF 程序可以处理 Windows 触摸消息 2019-08-01
- The partial same C# namespace may cause source code compatibility issue 2019-07-27
- 使用基于 Roslyn 的 Microsoft.CodeAnalysis.PublicApiAnalyzers 来追踪项目的 API 改动,帮助保持库的 API 兼容性 2019-07-27
- .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景 2019-07-20
- The VisualBrush of WPF only refresh the visual but not the layout 2019-07-12
- WPF 的 VisualBrush 只刷新显示的视觉效果,不刷新布局范围 2019-07-12
- WPF 很少人知道的科技 2019-07-11
- 如果不用 ReSharper,那么 Visual Studio 2019 能还原 ReSharper 多少功能呢? 2019-07-10
- Roslyn 入门:使用 Visual Studio 的语法可视化(Syntax Visualizer)窗格查看和了解代码的语法树 2019-07-07
- 如何快速创建 Visual Studio 代码片段? 2019-07-05
- .NET/C# 中设置当发生某个特定异常时进入断点(不借助 Visual Studio 的纯代码实现) 2019-07-04
- 在 Visual Studio 中设置当发生某个特定异常或所有异常时中断 2019-07-04
- .NET/MSBuild 中的发布路径在哪里呢?如何在扩展编译的时候修改发布路径中的文件呢? 2019-07-04
- App will crash when using the when keyword in a catch expression 2019-07-02
- 使用 Visual Studio 编译时,让错误一开始发生时就停止编译(以便及早排查编译错误节省时间) 2019-06-30
- C#/.NET 移动或重命名一个文件夹(如果存在,则合并而不是出现异常报错) 2019-06-29
- 如何追踪 WPF 程序中当前获得键盘焦点的元素并显示出来 2019-06-29
- 如何监视 WPF 中的所有窗口,在所有窗口中订阅事件或者附加 UI 2019-06-28
- .NET 中让 Task 支持带超时的异步等待 2019-06-21
- .NET 使用 ILMerge 合并多个程序集,避免引入额外的依赖 2019-06-17
- .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖 2019-06-17
- .NET 的程序集加载上下文 2019-06-13
- WPF 程序的编译过程 2019-06-11
- 制作通过 NuGet 分发的源代码包时,如果目标项目是 WPF 则会出现一些问题(探索篇,含解决方案) 2019-06-11
- 如何为 Win32 的打开和保存对话框编写文件过滤器(Filter) 2019-05-31
- .NET/C# 编译期能确定的字符串会在字符串暂存池中不会被 GC 垃圾回收掉 2019-05-28
- .NET/C# 的字符串暂存池 2019-05-28
- .NET/C# 避免调试器不小心提前计算本应延迟计算的值 2019-05-28
- WPF 使用 AppBar 将窗口停靠在桌面上,让其他程序不占用此窗口的空间(附我封装的附加属性) 2019-05-23
- .NET/C# 使用 ConditionalWeakTable 附加字段(CLR 版本的附加属性,也可用用来当作弱引用字典 WeakDictionary) 2019-05-23
- WPF 判断一个对象是否是设计时的窗口类型,而不是运行时的窗口 2019-05-22
- 通过修改环境变量修改当前进程使用的系统 Temp 文件夹的路径 2019-05-16
- C# 8.0 中开启默认接口实现 2019-05-15
- 让 Directory Opus 支持 Windows 10 的暗色主题 2019-05-14
- 通过分析 WPF 的渲染脏区优化渲染性能 2019-05-13
- 使用 EnumWindows 找到满足你要求的窗口 2019-04-30
- XAML 很少人知道的科技 2019-04-30
- WPF 程序鼠标在窗口之外的时候,控件拿到的鼠标位置在哪里? 2019-04-30
- 使用 dotnet 命令行配合 vscode 完成一个完整 .NET 解决方案的编写和调试 2019-04-29
- Visual Studio 通过修改项目的调试配置文件做到临时调试的时候不要编译(解决大项目编译缓慢问题) 2019-04-26
- Visual Studio 如何能够不进行编译就调试 .NET/C# 项目(用于解决大项目编译缓慢的问题) 2019-04-26
- WPF 获取元素(Visual)相对于屏幕设备的缩放比例,可用于清晰显示图片 2019-04-25
- C#/.NET 使用 git 命令行来操作 git 仓库 2019-04-21
- NullReferenceException,就不应该存在! 2019-04-16
- C# 跨设备前后端开发探索 2019-04-16
- 从零开始学习 dotnet 编译过程和 Roslyn 源码分析 2019-04-12
- .NET/C# 项目如何优雅地设置条件编译符号? 2019-04-12
- 在 Visual Studio 新旧不同的 csproj 项目格式中启用混合模式调试程序(开启本机代码调试) 2019-04-12
- .NET/C# 中你可以在代码中写多个 Main 函数,然后按需要随时切换 2019-04-12
- Sdk 风格的 csproj 对 WPF/UWP 支持不太好?有第三方 SDK 可以用!MSBuild.Sdk.Extras 2019-04-12
- 语义版本号(Semantic Versioning) 2019-04-12
- 项目文件中的已知属性(知道了这些,就不会随便在 csproj 中写死常量啦) 2019-04-12
- .NET Core/Framework 创建委托以大幅度提高反射调用的性能 2019-04-04
- 将 C++/WinRT 中的线程切换体验带到 C# 中来(WPF 版本) 2019-03-30
- WPF 的命令的自动刷新时机——当你 CanExecute 会返回 true 但命令依旧不可用时可能是这些原因 2019-03-29
- When WPF Commands update their CanExecute states? 2019-03-29
- C#/.NET 如何获取一个异常(Exception)的关键特征,用来判断两个异常是否表示同一个异常 2019-03-26
- C#/.NET 如何在第一次机会异常 FirstChanceException 中获取比较完整的异常堆栈 2019-03-24
- 使用 Microsoft.Net.Compilers 在旧版本的 Visual Studio 2013/2015/2017 中开启新的 C# 7.x 和 C# 8 语法 2019-03-23
- 制作一个极简的 .NET 客户端应用自安装或自更新程序 2019-03-22
- WPF 同一窗口内的多线程/多进程 UI(使用 SetParent 嵌入另一个窗口) 2019-03-21
- 应用程序清单 Manifest 中各种 UAC 权限级别的含义和效果 2019-03-20
- Windows 下使用 runas 命令以指定的权限启动一个进程(非管理员、管理员) 2019-03-19
- 如何创建应用程序清单文件 App.Manifest,如何创建不带清单的应用程序 2019-03-17
- 将 async/await 异步代码转换为安全的不会死锁的同步代码(使用 PushFrame) 2019-03-15
- 使用 Task.Wait()?立刻死锁(deadlock) 2019-03-15
- C#/.NET 如何结束掉一个进程 2019-03-14
- 让你的 VSCode 具备调试 C# 语言 .NET Core 程序的能力 2019-03-14
- 手工编辑 tasks.json 和 launch.json,让你的 VSCode 具备调试 .NET Core 程序的能力 2019-03-14
- C#/.NET 中的契约式编程,以及 ReSharper 为我们提供的契约特性 2019-03-14
- 在 csproj 文件中使用系统环境变量的值(示例将 dll 生成到 AppData 目录下) 2019-03-12
- 为 WPF 程序添加 Windows 跳转列表的支持 2019-03-10
- Windows 上的应用程序在运行期间可以给自己改名(可以做 OTA 自我更新) 2019-03-10
- .NET 使用 JustAssembly 比较两个不同版本程序集的 API 变化 2019-03-10
- 详解 .NET 反射中的 BindingFlags 以及常用的 BindingFlags 使用方式 2019-03-10
- 如何使用 MyGet 这个激进的 NuGet 源体验日构建版本的 .NET Standard / .NET Core 2019-03-10
- .NET/C# 获取一个正在运行的进程的命令行参数 2019-03-09
- WPF 让普通 CLR 属性支持 XAML 绑定(非依赖属性),这样 MarkupExtension 中定义的属性也能使用绑定了 2019-03-09
- 四种方法获取可执行程序的文件路径(.NET Core / .NET Framework) 2019-03-09
- WPF 多线程 UI:设计一个异步加载 UI 的容器 2019-03-09
- 使用并解析 OPML 格式的订阅列表来转移自己的 RSS 订阅(概念篇) 2019-03-09
- 使用 Postman 调试 ASP.NET Core 开发的 API 2019-03-09
- 项目文件中的已知 NuGet 属性(使用这些属性,创建 NuGet 包就可以不需要 nuspec 文件啦) 2019-03-09
- 为什么 C# 的 string.Empty 是一个静态只读字段,而不是一个常量呢? 2019-03-05
- C#/.NET 调试的时候显示自定义的调试信息(DebuggerDisplay 和 DebuggerTypeProxy) 2019-03-05
- 使用 Xamarin 开发 iOS 键盘扩展(含网络访问) 2019-03-04
- 如何为你的 Windows 应用程序关联一种或多种文件类型 2019-03-04
- 如何在命令行中监听用户输入文本的改变? 2019-03-04
- 仅反射加载(ReflectionOnlyLoadFrom)的 .NET 程序集,如何反射获取它的 Attribute 元数据呢? 2019-03-04
- 编写 MSBuild 内联编译任务(Task)用于获取当前编译环境下的所有编译目标(Target) 2019-03-01
- 如何在 csproj 中用 C# 代码写一个内联的编译任务 Task 2019-03-01
- .NET/C# 将一个命令行参数字符串转换为命令行参数数组 args 2019-02-19
- .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例 2019-01-25
- C# 永远不会返回的方法真的不会返回 2019-01-20
- C#/.NET 如何确认一个路径是否是合法的文件路径 2019-01-16
- int? 竟然真的可以是 null!.NET/C# 确定可空值类型 Nullable
实例的真实类型 2019-01-08 - C# 中委托实例的命名规则 2019-01-08
- 三值 bool? 进行与或运算后的结果 2019-01-06
- .NET 中使用 Mutex 进行跨越进程边界的同步 2018-12-30
- C#/.NET 使用 CommandLineParser 来标准化地解析命令行 2018-12-30
- 在 Roslyn 分析语法树时添加条件编译符号的支持 2018-12-24
- .NET 除了用 Task 之外,如何自己写一个可以 await 的对象? 2018-12-23
- 定义一组抽象的 Awaiter 的实现接口,你下次写自己的 await 可等待对象时将更加方便 2018-12-23
- 在 WPF/UWP 中实现一个可以用 await 异步等待 UI 交互操作的 Awaiter 2018-12-22
- .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter 2018-12-22
- .NET 中使用 TaskCompletionSource 作为线程同步互斥或异步操作的事件 2018-12-22
- StyleCop 是什么,可以帮助团队带来什么价值? 2018-12-15
- 在 Visual Studio 中使用 EditorConfig 统一代码风格(含原生与插件) 2018-12-14
- .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间) 2018-12-14
- .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法) 2018-12-14
- .NET/C# 异常处理:写一个空的 try 块代码,而把重要代码写到 finally 中(Constrained Execution Regions) 2018-12-14
- C# 重载条件逻辑运算符(&& 和 ||) 2018-12-14
- UWP 轻量级样式定义(Lightweight Styling) 2018-12-14
- C# 空合并操作符(??)不可重载?其实有黑科技可以间接重载! 2018-12-14
- 让控制台支持 ANSI 转义序列,输出下划线、修改颜色或其他控制 2018-12-14
- (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序 2018-12-14
- .NET/C# 使窗口永不激活(No Activate 永不获得焦点) 2018-12-14
- C# 中那些可以被重载的运算符(操作符),以及使用它们的那些丧心病狂的语法糖 2018-12-14
- 如何快速编写和调试 Emit 生成 IL 的代码 2018-12-14
- Roslyn 的确定性构建 2018-12-14
- (持续整理中)Visual Studio 中 C# 代码分析规则集中每一项的含义 (stylecop ruleset) 2018-12-14
- 生成代码,从 T 到 T1, T2, Tn —— 自动生成多个类型的泛型 2018-12-14
- C#/.NET 匿名函数会捕获变量,并延长对象的生命周期 2018-12-14
- 迫不及待地体验了一把 C#8.0 中的可空引用类型(Nullable Reference) 2018-12-14
- 异步任务中的重新进入(Reentrancy) 2018-12-14
- 使用 ReSharper,输入即遵循 StyleCop 的代码格式化规范 2018-12-01
- 只有你能 new 出来!.NET 隐藏构造函数的 n 种方法(Builder Pattern / 构造器模式) 2018-11-27
- 都是用 DllImport?有没有考虑过自己写一个 extern 方法? 2018-11-27
- 了解 .NET/C# 程序集的加载时机,以便优化程序启动性能 2018-11-11
- 出让执行权:Task.Yield, Dispatcher.Yield 2018-10-29
- 课程 预编译框架,开发高性能应用 - 微软技术暨生态大会 2018 2018-10-19
- 各个 C# 版本的主要特性、发布日期和发布方式(C# 1.0 - 7.3) 2018-10-15
- 使用并解析 OPML 格式的订阅列表来转移自己的 RSS 订阅(解析篇) 2018-09-23
- .NET 命令行参数包含应用程序路径吗? 2018-09-13
- WPF 同一窗口内的多线程 UI(VisualTarget) 2018-09-05
- .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法) 2018-09-02
- .NET/C# 使用反射调用含 ref 或 out 参数的方法 2018-09-02
- .NET/C# 使用反射注册事件 2018-09-01
- .NET/C# 判断某个类是否是泛型类型或泛型接口的子类型 2018-09-01
- 在操作系统重启后恢复应用程序的工作状态 2018-09-01
- 屏幕上那个灰色带有数字的框是什么?看着好难受! 2018-09-01
- 使用 GitVersion 在编译或持续构建时自动使用语义版本号(Semantic Versioning) 2018-09-01
- Automatically increase the semantic version using GitVersion 2018-09-01
- 使用 Emit 生成 IL 代码 2018-09-01
- C#/.NET 序列化和反序列化 YAML 元数据 2018-08-13
- C#/.NET 读取或修改文件的创建时间和修改时间 2018-08-12
- Introducing MSTestEnhancer to make unit test result easy to read 2018-08-12
- 不再为命名而苦恼!使用 MSTestEnhancer 单元测试扩展,写契约就够了 2018-08-12
- 使用 C# 代码创建快捷方式文件 2018-08-11
- .NET/C# 使用 Span
为字符串处理提升性能 2018-07-22 - 使用 PInvoke.net Visual Studio Extension 辅助编写 Win32 函数签名 2018-07-21
- 理解 Roslyn 中的红绿树(Red-Green Trees) 2018-07-19
- Roslyn 语法树中的各种语法节点及每个节点的含义 2018-07-18
- C#/.NET 中推荐的 Dispose 模式的实现 2018-06-13
- 利用 ReSharper 自定义代码中的错误模式,在代码审查之前就发现并修改错误 2018-03-20
- 分享一个算法,计算能在任何背景色上清晰显示的前景色 2018-02-20
- 应该抛出什么异常?不应该抛出什么异常?(.NET/C#) 2018-02-04
- .NET/C# 建议的异常处理原则 2018-02-04
- 为什么委托的减法(- 或 -=)可能出现非预期的结果?(Delegate Subtraction Has Unpredictable Result) 2017-12-28
- 真的要比较 for 和 foreach 的性能吗?(内附性能比较的实测数据) 2017-12-07
- 使用 ExceptionDispatchInfo 捕捉并重新抛出异常 2017-10-27