Visual Studio用户界面中的对 using 排序选项可以提高源代码的可读性,方法是按字母顺序排列并组织using指令using、别名和以下顺序的extern别名:
extern 别名
using 指令
using 别名
说明
默认情况下,Visual Studio排序using指令以System开始,位于其他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 指令进行分组和排序的,因为该指令和注释之间没有回车符。若要防止此行为,请在注释后添加额外的回车。