贝利信息

C#如何使用global using指令 C# 10全局using指令用法

日期:2025-12-18 00:00 / 作者:幻夢星雲
C# 10 的 global using 指令用于全项目自动引入命名空间,需置于任意源文件顶部、namespace 外;推荐新建 GlobalUsings.cs 统一管理,支持条件编译,但不可在 namespace 内使用,且无法局部屏蔽。

C# 10 引入的 global using 指令,是为了减少重复的 using 语句,让项目中所有源文件自动引入指定命名空间,无需在每个 .cs 文件顶部手动写一遍。

global using 放在哪?

必须放在项目的任意一个 C# 源文件(通常是 GlobalUsings.csProgram.cs)的最顶部,且要在任何 namespace 声明和类型定义之前。它不是作用于单个文件,而是整个编译单元(即整个项目,默认情况下)生效。

基本写法示例

直接在文件顶部写:

global using System;
global using System.Collections.Generic;
global using System.Linq;
global using Microsoft.AspNetCore.Mvc;

这样,项目中所有 .cs 文件就自动拥有了这些 using,不再需要各自重复声明。

结合条件编译或目标框架

global using 支持预处理器指令,可按需控制引入范围:

#if NET6_0_OR_GREATER
global using System.Text.Json;
#endif

if DEBUG

global using Microsoft.Extensions.Logging;

endif

适合跨框架项目或调试/发布环境差异较大的场景。

注意事项与常见问题

global using 是编译期特性,不改变运行时行为,但会影响代码补全和 IDE 识别。

基本上就这些。合理使用 global using 能让代码更干净,尤其在 Web API、ASP.NET Core 项目中效果明显,但别为了省几行而过度引入不常用的命名空间。