如何在Visual Studio中设置显式生成默认访问修饰符?
在Visual Studio中让新类默认显式添加访问修饰符的设置方法
当然有办法实现这个需求!你可以通过修改Visual Studio的内置代码模板来达成,具体操作步骤如下:
1. 定位类模板文件的位置
不同版本的Visual Studio,模板文件的路径略有区别,你可以参考下面的路径找到目标文件:
- Visual Studio 2022:一般路径为
C:\Program Files\Microsoft Visual Studio\2022\<你的版本,比如Community>\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class\Class.cs - Visual Studio 2019/2017:把路径中的
2022替换成对应的版本号即可,比如2019
注意:如果你的VS安装在非系统盘,记得把开头的
C:\换成对应盘符。另外,修改系统目录下的文件需要管理员权限,建议右键以管理员身份打开记事本或VS来编辑模板。
2. 修改模板代码内容
打开Class.cs文件后,你会看到默认的模板代码:
using System; using System.Collections.Generic; $if$ ($targetframeworkversion$ >= 3.5)using System.Linq; $endif$using System.Text; $if$ ($targetframeworkversion$ >= 4.5)using System.Threading.Tasks; $endif$ namespace $rootnamespace$ { class $safeitemrootname$ { } }
将其中的class $safeitemrootname$修改为internal class $safeitemrootname$(如果你希望默认是public,也可以改成public class $safeitemrootname$,不过C#中类的默认访问修饰符是internal,刚好符合你的需求)
修改后的代码如下:
using System; using System.Collections.Generic; $if$ ($targetframeworkversion$ >= 3.5)using System.Linq; $endif$using System.Text; $if$ ($targetframeworkversion$ >= 4.5)using System.Threading.Tasks; $endif$ namespace $rootnamespace$ { internal class $safeitemrootname$ { } }
3. 刷新VS的模板缓存
修改完模板后,需要让Visual Studio加载新的模板配置:
- 方法一:打开VS,点击顶部菜单栏的工具 -> 导入和导出设置 -> 重置所有设置(这个操作不会丢失你的个性化设置,只是刷新模板缓存;也可以先导出当前设置再重置,更稳妥)
- 方法二:关闭所有VS窗口,删除
%USERPROFILE%\AppData\Local\Microsoft\VisualStudio\<版本号>\ItemTemplateCache目录下的缓存文件,重新打开VS即可。
完成以上步骤后,你再新建类时,生成的代码就会自动带上internal这个显式的访问修饰符啦!
内容的提问来源于stack exchange,提问作者Athanviel




