我們在使用 Visual Studio 2005/2008/2010 的時候,建立的class預設不是public的,這點大家可能都注意到了,可能有些同學甚至和我一樣都有點煩惱了。
帶著這個疑問上網搜尋了一下,在stackoverflow.com上搜到一個文章(英文原貼),分析的還不錯,說預設的類為內部類(internal)是有很多好處的,可以把大部分的功能實現都隱藏在assembly內部,而只把想要公開的類/介面提供給使用者。如果你真覺得煩惱,文章還給出了把預設類建立為public的方法,說是ReSharper就可以,也可以直接修改 Visual Studio 的類模板,模板檔案位置在 %ProgramFiles%\Microsoft Visual Studio 8\Common7 IDE\ItemTemplates\CSharp\1033\Class.zip。
經本人測試,直接修改此zip檔案無效,也可能是由於本人是在 Visual Studio 2008 環境測試的,而此方法只適用於 Visual Studio 2005,反正是修改了 %ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class.zip 這個壓縮檔中的Class.cs檔案的內容,沒有任何效果。最後發現 %ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\ 下面有個 ItemTemplatesCache 檔案夾,抱著試試看的想法,修改了 %ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplatesCache\CSharp\Code\1033\Class.zip\Class.cs 檔案的內容,在 class 前添加了 public ,儲存,重新啟動 Visual Studio 2008,建立一個類,OK了!
最後聲明此法不是正統套路(本人亦不是正統程式員),不太建議使用,僅供參考。