程式碼片段及其使用方式
程式碼片段是小區塊的可重複使用程式碼,可以加入到程式碼檔案中。 程式碼片段通常包含常用的程式碼區塊,例如 Try...Finally
或 If...Else
區塊。 您也可以使用程式碼片段來新增整個類別或方法。
程式碼片段不僅具有用於選取程式碼片段的標題,而且具有可鍵入以插入程式碼片段的捷徑名稱。 程式碼片段還可以包含取代參數,做為預留位置。 程式碼片段可用於多種語言,包括 C#、C++ 和 Visual Basic。
擴充程式碼片段和範圍陳述式程式碼片段
您可以將兩種程式碼片段新增至程式碼:
- 將在指定的插入點新增 [擴充] 程式碼片段。
- 將在選取的程式碼周圍新增 [範圍陳述式] 程式碼片段,並且僅適用於 C# 和 C++。
尋找可用的程式碼片段
若要檢視某種語言的可用程式碼片段,請從選單列選取 [工具] > [程式碼片段管理員],或按 [ctrl]+[K]、[B],然後從下拉式功能表中選取您想要的語言。
若要建立並匯入您自己的程式碼片段,使其出現在程式碼片段清單中,請參閱逐步解說:在 Visual Studio 中建立程式碼片段。
新增程式碼片段至程式碼檔案
新增程式碼片段至程式碼檔案:
在程式碼編輯器中,將資料指標放在要新增程式碼片段的位置或選擇 C# 或 C++ 程式碼。
執行下列其中一項動作:
- 在 Visual Studio 選單列上,選擇 [編輯] > [IntelliSense] > [插入程式碼片段] 或 [編輯] > [IntelliSense] > [範圍陳述式]。
- 以滑鼠右鍵按一下,然後從特色選單中選擇 [程式碼片段] > [插入程式碼片段] 或 [程式碼片段] > [範圍陳述式]。
- 從鍵盤按 [Ctrl]+[K]、[X] 作為擴充程式碼片段,或 [Ctrl]+[K]、[S] 作為範圍陳述式程式碼片段。
在下拉清單中按兩下所需的程式碼片段,或鍵入程式碼片段捷徑,然後按 Tab 或 Enter。
新增擴充程式碼片段
例如,C# 擴充程式碼片段 tryf
將新增下列 Try...Finally
區塊:
try
{
}
finally
{
}
若要新增此擴充程式碼片段,請執行以下操作:
- 在程式碼編輯器中,將游標放在您要新增程式碼片段的位置。
- 以滑鼠右鍵按一下,然後從滑鼠右鍵特色選單中選取 [插入程式碼片段],或者使用選單列或鍵盤命令。
- 開啟 [Visual C#] 資料夾,然後在下拉式清單中按兩下 [tryf],或選取 [tryf],然後按 [Tab] 或 [Enter] 鍵。
提示
您也可以將資料指標放在插入點,鍵入 [tryf],然後按兩次 [Tab] 鍵。
新增範圍陳述式程式碼片段
在下列 C++ 程式碼片段範例中,捷徑 if
可用作插入程式碼片段或範圍陳述式程式碼片段。 如果您選取程式碼行 return FALSE;
,然後選擇 [範圍陳述式] > [if],程式碼片段隨即在此行周圍展開。
if (true)
{
return FALSE;
}
程式碼片段取代參數
程式碼片段可以包含取代參數,也就是您必須取代的預留位置,以符合您撰寫的程式碼。 在上述範例中,true
是取代參數,您必須以適當的條件取代。 對於此程式碼片段中取代參數的每個執行個體,都會重複取代。
例如,Visual Basic 有一個定義屬性的程式碼片段。 若要插入程式碼片段:
- 在 Visual Basic 程式碼檔案的滑鼠右鍵內容功能表中,選取 [程式碼片段]>[插入程式碼片段]。
- 選取 [程式碼模式]>[屬性、程序、事件]>[定義屬性]。
以下是已插入的程式碼:
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
如果您變更 newPropertyValue
為 m_property
,則 newPropertyValue
的每個執行個體都會變更。 如果您在屬性宣告中將 String
變更為 Int
,則 Set
方法中的值也會變更為 Int
。
使用程式碼片段的最佳做法
程式碼片段中的程式碼只會顯示最基本的做法。 對於大部分的應用程式,此程式碼必須經過修改以符合應用程式。
例外狀況處理
一般來說,程式碼片段 Try...Catch
區塊會攔截並重新擲回所有例外狀況,但這可能適用於您的專案。 對於每個例外狀況而言,有數種回應的方法。 如需範例,請參閱如何使用 try/catch 處理例外狀況 (C#) 和 Try...Catch...Finally 陳述式 (Visual Basic)。
檔案位置
當您調整應用程式的檔案位置時,請務必考慮下列因素。
尋找可存取的位置。 使用者可能無法存取電腦的 [程式檔案] 資料夾,因此應用程式檔案的使用者存檔作業可能無法正常運作。
尋找安全位置。 將檔案儲存在 C:\等根資料夾並不安全。 對於應用程式資料,最好使用 [應用程式資料] 資料夾。 若是個別使用者資料,應用程式可以在每位使用者的 [文件] 資料夾中建立檔案。
使用有效的檔案名稱。 您可以使用 OpenFileDialog 和 SaveFileDialog 控制項,從而減少發生無效檔案名稱的可能性。
請注意,您可以在程式碼操作檔案之前刪除使用者選取的檔案。 此外,使用者可能沒有寫入該檔案的權限。
安全性
程式碼片段的安全性視其在原始程式碼中的使用位置,以及程式碼中的修改方式而定。 下列清單包含一些需要考量的部分:
- 檔案和資料庫存取
- 程式碼存取安全性
- 保護資源,例如事件記錄檔和登錄
- 儲存密碼
- 驗證輸入
- 將資料傳遞至指令碼技術
如需詳細資訊,請參閱保護應用程式。
已下載的程式碼片段
Visual Studio 所安裝的程式碼片段本身並沒有安全性方面的危險。 不過,這些程式碼片段在您的應用程式中可能會產生安全性風險。 從網際網路下載的程式碼片段應視為任何其他下載的內容,因此必須格外謹慎處理。 只從您信任的網站下載程式碼片段,並使用最新的防毒軟體。
在 [記事本] 或 Visual Studio 的 XML 編輯器中開啟所有下載的程式碼片段檔案,並仔細檢閱後再進行安裝。 請注意下列問題:
執行程式碼片段的程式碼時,可能會損害您的系統。 執行前,請仔細閱讀原始程式碼。
程式碼片段檔案中的
HelpURL
區塊包含執行惡意指令檔或顯示攻擊性網站的 URL。程式碼片段包含以無訊息模式新增至專案,並且可能會從您系統上的任何位置載入的參考。 您可以從下載程式碼片段的同一位置下載這些參考。 程式碼片段可能會接著呼叫參考中執行惡意程式碼的方法。 若要偵測這類參考,請檢閱程式碼片段檔案中的
Imports
和References
區塊。