如何为新的C#类/接口编辑Visual Studio模板?


208

我发现自己在Visual Studio中创建的几乎每个C#文件中都删除了以下导入语句:

using System.Collections.Generic;
using System.Linq;
using System.Text;

当然,使用Resharper做到这一点真的很容易,但是我真的不应该这样做。

VS目录中的某处必须有一些模板(类,接口),我可以从中删除有问题的行。在哪里可以找到这些文件?有没有更好的方法来控制默认导入列表?

Answers:


368

提取,编辑和重新压缩。路径用于类模板,但是接口模板在同一文件夹中。

您可能要编辑每个模板中的VS模板文件,以消除它们不会自动将引用添加到程序集System,System.Data和/或System.Xml的事实。

2005年:

C:\Program Files (x86)\Microsoft Visual Studio 8\Common7\IDE\ItemTemplates\CSharp\1033\Class.zip

2008年:

C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class.zip

2010年:

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class.zip

从Visual Studio 2012开始,不会压缩模板,因此您可以.cs直接在每个适用的文件夹中编辑每个模板。

2012年:

C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class\Class.cs

2013年:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class\Class.cs

2015年:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class\Class.cs

2017年

VS 2017更改目录位置,并且现在取决于您的版本(Professional / Enterprise / etc)。因此对于企业版:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class\Class.cs

2019年

VS 2019的位置与2017年相似。因此对于企业版:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class\Class.cs

笔记

速成版

在Express Edition中,您将必须搜索文件夹WDExpress内的子目录IDE,例如VS 2015 Express:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\WDExpress\ItemTemplates\CSharp\Code\1033\Class\Class.cs

其他语言

如果您不使用英文版的Visual Studio,则该文件夹1033可能不存在,但是代表您的语言的数字不同。例如,它是1031在德国安装的。


42
它并不总是反映Visual Studio中的这些更改。如果不适合您,请编辑目录中的ItemTemplatesCache文件(除了ItemTemplates)。例如(2005年)C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplatesCache\CSharp\Code\1033\Class.zip\Class.cs。请注意,Class.zip这里是目录,而不是实际的ZIP文件。

5
请注意,Service Pack更新将清除缓存,因此请确保将其备份,以便可以将其放回去。
sweetfa 2012年

3
@Joe:或通过运行devenv / setup强制Visual Studio重新加载模板。该命令可能需要一分钟才能运行。
布莱恩(Brian)

4
@Brian devenv.exe / installvstemplates就足够了。至少对于VS2012。在VS运行时可执行。
卢卡斯

6
如果您使用的是ASP.NET/MVC,而Visual Studio不会获取对模板的更新,请尝试编辑。C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\WebClass\Class.cs.然后运行devenv.exe / installvstemplates。
J. Andrew Laughlin 2014年

9

您正在寻找以下目录:

C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplates\CSharp

每个模板都是此文件1033夹中某个类别的(英文)子文件夹内的ZIP文件。您可以.cs在ZIP文件中编辑该文件。

如果您使用的是32位系统,请删除(x86)。VS2005是Microsoft Visual Studio 8,VS2010是Microsoft Visual Studio 10.0


请注意,这些模板不是针对每个用户的。您可以通过将这些ZIP文件复制到来制作每个用户的模板My Documents\Visual Studio 2008\Templates\ItemTemplates\Visual C#


1
感谢您此处的按用户选择。但是请注意,至少在VS2015中,没有zip文件/文件夹。我的路径是C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class,然后创建并复制到...\Documents\Visual Studio 2015\Templates\ItemTemplates\Visual C#\Code\1033\Class。执行此操作时,我关闭了Visual Studio。我还运行了devenv.exe /installvstemplates另一条评论中提到的命令。当我重新启动VS时,创建新类时会显示我的更改。优秀的!
sliderhouserules

1

对于Visual Studio 2012,要将其从默认的class.cs文件中删除,项目模板应如下所示(不包括/使用using语句删除):

默认类模板文件:C:\ Program Files(x86)\ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ ItemTemplates \ CSharp \ Code \ 1033 \ Class \ Class.cs

using System;
namespace $rootnamespace$
{
    class $safeitemrootname$
    {
    }
}

此处了解更多信息:http : //aaron-hoffman.blogspot.com/2013/05/edit-default-visual-studio-2012-item.html


1

根据项目类型,新的类模板也可能位于不同的文件夹中。在VS 2015中的Web项目中工作时,我发现在编辑文件时

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class\Class.cs

创建新类时,我看不到默认模板的任何区别。只有在编辑文件之后

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\WebClass\Class.cs

我能够使用所需的默认格式创建一个新类。


1

Sam Harwell的出色信息的新增内容。我正在使用Visual Studio 2019社区,并且我的班级模板的路径与前面提到的相同,除了``企业''(由``社区''代替)之外。所以:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class

还值得一提的是,在我的安装中,Class“ zip”文件夹根本不是zip。它只是另一个文件夹。

另一个“陷阱”是,如果您正在运行预览版,则它位于其自己的“预览”文件夹中:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Preview\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class

对于其他模板,要查找的文件夹是:

C:\ Program Files(x86)\ Microsoft Visual Studio \ [YEAR] \ [EDITION] \ Common7 \ IDE \ ItemTemplates

因此,在我的机器上是:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Preview\Common7\IDE\ItemTemplates

[2020年5月10日编辑]

您还需要在“工具” |“工具”中检查“用户项目模板位置”的值。选项| 项目和解决方案/位置


我希望这可以帮助别人。


0

旧问题-新答案:很抱歉,这是一个令人讨厌的问题:您为什么要关心它。

生产力电动工具(Visual Studio扩展,我还是建议使用它)->启用名为“保存时删除和排序使用情况”的选项/设置

无需额外的点击/键盘快捷键/手动模板修改等...,因为无论如何您都必须保存文件。


0

只是想补充一下Sam Harwell的出色回答。可能有多个类模板,例如AspNetCore在以下位置有其自己的模板:

C:\ Program Files(x86)\ Microsoft Visual Studio \ 2019 \ Enterprise \ Common7 \ IDE \ ItemTemplates \ AspNetCore \ Code \ 1033 \ Class \ Class.cs

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.