对 Using 排序
更新:2007 年 11 月
Visual Studio 用户界面中的“对 Using 排序”选项通过按字母顺序排列并按以下顺序组织 using 指令、using 别名和 extern 别名来提高源代码的可读性:
extern 别名
using 指令
using 别名
说明: 默认情况下,Visual Studio 会将以 System 开头的 using 指令排在其他 using 指令之前。您可以修改“对 Using 排序”以对所有的 using 指令按字母顺序排序。有关更多信息,请参见“选项”对话框 ->“文本编辑器”->“C#”->“高级”
调用该操作有两种方式:
主菜单:在“编辑”菜单上指向“IntelliSense”,再指向“组织 Using”,然后单击“对 Using 排序”。
上下文菜单:右击代码编辑器中的任意位置,指向“组织 Using”,再单击“对 Using 排序”。
下面的示例显示了对源代码执行“对 Using 排序”所生成的结果。
执行之前 |
执行之后 |
---|---|
extern alias ApressLibrary2; extern alias ApressLibrary1; using aio = apressio; using System.Collections; using Microsoft.CSharp; using System; using apressio = Apress.IO; |
extern alias ApressLibrary1; extern alias ApressLibrary2; using System; using System.Collections; using Microsoft.CSharp; using aio = apressio; using apressio = Apress.IO; |
备注
预处理器指令
在预处理器指令隔开指令或别名时,“对 Using 排序”不会执行排序操作。例如,不会对下面的代码进行排序。
// Not sorted because preprocessor directives separate the using directives.
using System.Linq;
#region MyRegion
using System.Collections.Generic;
using System;
#endregion
using System.Collections;
但是,会对下面的示例进行排序。
// Sorted because pre-processor directives do not separate using directives
#region MyRegion
using System.Collections;
using System;
using System.Collections.Generic;
#endregion
注释
位于指令正上方或嵌入到指令中的注释在排序时会随指令一起排列。下面的示例阐释了这一点。
执行之前 |
执行之后 |
---|---|
// © Contoso, Ltd using apressdata = Apress.Data; using aio = apressio; using System.Collections; using System; // using System; using System.Collections.Generic; // using System.Text using System.Text; using apressio = Apress.IO; // The End |
using System; // using System; using System.Collections; using System.Collections.Generic; // using System.Text using System.Text; using aio = apressio; // © Contoso, Ltd using apressdata = Apress.Data; using apressio = Apress.IO; // The End |
在上面的示例中,注释 // © Contoso, Ltd 按下面的 using 语句进行分组和排序,这是因为语句和注释之间没有回车符。若要阻止此行为,请在注释后另外添加一个回车符。