代码片段及其使用方法

代码片段是可添加到代码文件的可重用代码的小块。 代码片段通常包含常用的代码块,例如 Try...FinallyIf...Else 块。 还可以使用代码片段添加整个类或方法。

代码片段具有一个用于选择代码段的标题,并且可以具有可键入插入代码段的快捷方式名称。 代码片段还可以包含替换参数,这些参数充当占位符。 代码片段适用于多种语言,包括 C#、C++ 和 Visual Basic。

扩展代码片段和包围代码片段

可以将两种类型的代码片段添加到代码:

  • 在指定的插入点添加 扩展 片段。
  • 围绕所选代码添加 环绕式 代码段,仅适用于 C# 和C++。

查找可用的代码片段

若要查看语言的可用代码段,请从菜单栏中选择 “工具>代码片段管理器 ”,或按 Ctrl+KB,然后从下拉菜单中选择所需的语言。

“代码片段管理器”对话框的屏幕截图。

若要创建和导入自己的代码片段,使其显示在代码片段列表中,请参阅 “演练:在 Visual Studio 中创建代码片段”。

向代码文件添加代码片段

向代码文件添加片段:

  1. 在代码编辑器中,将光标放在要添加代码片段的地方,或选择 C# 或 C++ 代码以添加代码片段。

  2. 请执行以下一项操作:

    • 在 Visual Studio 菜单栏上,选择编辑>IntelliSense>插入代码段编辑>IntelliSense>包围
    • 右键单击,然后>从上下文菜单中选择“插入代码段”或“代码段>包围”。
    • 在键盘上,按 Ctrl+KX 作为扩展代码段,或 按 Ctrl+KS 作为环绕代码段。
  3. 双击下拉列表中所需的代码段,或键入代码段快捷方式,然后按 TabEnter

添加扩展代码段

例如,C# 扩展片段 tryf 添加以下 Try...Finally 块:

try
{

}
finally
{

}

若要添加此扩展代码片段,请:

  1. 在代码编辑器中,将光标置于要添加代码片段的位置。
  2. 右键单击选择上下文菜单中的插入代码片段,或使用菜单栏或键盘命令。
  3. 打开 Visual C# 文件夹,然后在下拉列表中双击 tryf ,或选择 tryf ,然后按 TabEnter

小窍门

还可以将光标置于插入点,键入 tryf,然后按 Tab 两次。

添加环绕代码段

在C++代码片段的以下示例中, if 快捷方式可用作插入代码段或环绕代码段。 如果选择代码行 return FALSE; ,然后选择“ 环绕”>(如果),代码段将围绕该行展开。

if (true)
{
    return FALSE;
}

代码片段的替换参数

代码片段可以包含替换参数,这些参数是必须替换的占位符,以适应你编写的代码。 在上一个示例中, true 是一个替换参数,你将其替换为相应的条件。 对代码片段中该替换参数的每个实例,替换流程都会重复。

例如,Visual Basic 有一个定义属性的代码片段。 插入代码片段:

  1. 在 Visual Basic 代码文件中的右键单击上下文菜单中,选择 “代码片段>插入代码段”。
  2. 选择 代码模式>属性、过程、事件>定义属性

“定义属性”的代码片段菜单的屏幕截图。

插入以下代码:

Private newPropertyValue As String
Public Property NewProperty() As String
    Get
        Return newPropertyValue
    End Get
    Set(ByVal value As String)
        newPropertyValue = value
    End Set
End Property

如果更改为newPropertyValuem_property,则每个更改实例newPropertyValue。 如果在属性声明中将String更改为Int,方法中的Set值也会更改为Int

使用代码片段的最佳做法

代码片段中的代码仅显示执行某些作的最基本方法。 对于大多数应用程序,必须修改代码以适应应用程序。

异常处理

通常,代码片段 Try...Catch 会阻止捕获并重新引发所有异常,但这可能是项目的正确选择。 对于每个异常,有几种方法可以做出响应。 有关示例,请参阅 如何使用 try/catch 处理异常(C#)Try...Catch...Finally 语句(Visual Basic)

文件位置

调整文件位置以适应您的应用程序时,请务必考虑以下因素。

  • 查找可访问的位置。 用户可能无权访问计算机的 Program Files 文件夹,因此使用应用程序文件存储用户文件可能不起作用。

  • 查找安全位置。 将文件存储在 C:\ 等根文件夹中是不安全的。 对于应用程序数据,最好使用 应用程序数据 文件夹。 对于单个用户数据,应用程序可以在每个用户的 Documents 文件夹中创建一个文件。

  • 使用有效的文件名。 可以使用 OpenFileDialogSaveFileDialog 控件来减少无效文件名的可能性。

  • 请注意,用户选择的文件可能会在您的代码可以处理该文件之前被删除。 此外,用户可能无权写入文件。

安全

代码段的安全性取决于其在源代码中所处的位置,以及你在代码中对其进行修改的方式。 以下列表包含一些需要考虑的区域:

  • 文件和数据库访问
  • 代码访问安全性
  • 保护事件日志和注册表等资源
  • 存储机密
  • 验证输入
  • 将数据传递到脚本工具

有关详细信息,请参阅 安全应用程序

下载的代码片段

Visual Studio 安装的代码片段本身不是安全隐患。 但是,它们可以在应用程序中造成安全风险。 应谨慎对待从 Internet 下载的代码片段,就像任何其他下载的内容一样。 仅从信任的站点下载代码片段,并使用 up-to-date 病毒软件。

在记事本或 Visual Studio 的 XML 编辑器中打开所有下载的代码片段文件,并在安装之前仔细查看它们。 请注意以下问题:

  • 可能会在执行时损坏系统的代码片段。 在运行源代码之前,请仔细阅读源代码。

  • HelpURL 代码片段文件中的块,其中包含执行恶意脚本文件的 URL 或显示冒犯性网站。

  • 包含以无提示方式添加到项目的引用的代码片段,可以从系统上的任意位置加载。 可以从从中下载代码片段的同一位置下载这些引用。 然后,代码片段可以在执行恶意代码的引用中调用方法。 若要检测此类引用,请查看代码片段文件中的 Imports 块和 References 块。