﻿# Visual Studio 中 switch Code Snippet 與 enum 的完美搭配

在 Visual Studio 中原本就有內建一些 Code Snippet 了，我最常用的有 if , for , while , enum, prop , try , tryf 和 switch，而這幾個常用的 Code Snippet 都差不多，唯獨 switch 還有額外的特殊功能，他可以跟宣告為 enum 的型別做出完美的搭配。

一般來說，Code Snippet 的用法就是先輸入一些字，然後選取 Code Snippet 之後按下 Tab 鍵完成自動輸入的動作：

![switch Code Snippet](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/ac66c1e76a8012c8f967-image_3.png)

![image](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/21fbce99cc9a382e67f8-image_thumb_1.png)

當輸入完成後，可以在選取的內容中輸入你的程式，輸入完之後按下 Enter 即會自動完成程式碼輸入。

假設我先定義一個 enum 型別叫 ServiceLevel：

```
enum ServiceLevel
{
    Low,
    Middle,
    High
}
```

然後我再宣告一個物件實體：

```
ServiceLevel s1 = ServiceLevel.High;
```

重點來了，當你輸入 switch 後按下 Tab 鍵，然後輸入 s1

![switch Code Snippet](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/7160965764f0efae6181-image_thumb_2.png)

之後，按下 Enter 鍵完成輸入，就會變成如下圖的情況：

![switch Code Snippet with enum](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/b321847d46e8e6aef297-image_thumb_3.png)

所有的 enum 項目都會自動被產生，算是個很方便的用法。
