如何在生成的命名空间中不包含Visual Studio Project文件夹名称

sbo*_*len 36 namespaces solution visual-studio

如何防止VS项目中解决方案文件夹的名称附加到为添加到解决方案文件夹的新项目生成的命名空间?

示例:VS解决方案中的C#项目在C#项目属性中设置的默认命名空间:"BigClient.Domain"

如果您在此项目中创建名为"MySpecialStuff"的解决方案文件夹,然后将新类添加到"MySpecialStuff"解决方案文件夹中,则VS将创建具有"BigClient.Domain.MySpecialStuff"命名空间的新.cs文件.我想找到一个允许新添加的类的命名空间仅保留"BigClient.Domain"的"项目级"命名空间而不是VS将"MySpecialStuff"解决方案文件夹名称附加到命名空间的方法.

我似乎记得有人读过一篇博客文章,这是可能的(通过VS中的选项/设置或注册表设置),但我不记得现在我想要它在哪里或如何:)

我的平台是VS 2008,如果对于不同的VS版本,答案=不同.

bdu*_*kes 7

如果安装了ReSharper,则在目录(F4)的设置上,将Namespace Provider设置为false.

  • 啊没关系。我想这是一个 ReSharper 设置,而不是内置在 Visual Studio 中 (2认同)

小智 1

制作新的类模板或更改 Visual Studio 的类模板。请参阅 MSDN 文档了解如何执行此操作。在模板文件中,您很快就会看到插入“安全”命名空间名称的行。

  • 我不确定这是如何被接受的答案。它没有回答OP最初的问题。http://msdn.microsoft.com/en-us/library/eehb4faa%28VS.80%29.aspx 列出了所有内置模板参数,并且似乎只有参数 $rootnamespace$ 有任何内容与命名空间有关,并且 $rootnamespace$ 似乎始终包含文件要添加到的文件夹名称。这正是OP希望消除的。 (9认同)
  • @MarkDavis,这只适用于安装了 Resharper 的情况。 (7认同)
  • 我知道这个问题已得到解答,但如果您在解决方案资源管理器中选择文件夹,然后在属性中设置命名空间提供程序 = False (2认同)