提问人:Gabriel Weidmann 提问时间:7/22/2021 最后编辑:Gabriel Weidmann 更新时间:9/20/2021 访问量:673
如何在整个 C# 项目中使用“平面”命名空间
How to use a "flat" namespace in whole C# project
问:
我想对我的整个 c# 类库使用相同的命名空间。但新文件的默认行为是使用类似 的命名空间。[Base namespace].[Folder 1].[Folder 2]
Visual Studio 2019 是否有简单的方法或插件可以使所有新文件使用相同的命名空间?所以不管文件夹是什么?[Base namespace]
但只是对于单个项目,我不想更改全局文件模板。
答:
0赞
Michał Turczyn
7/22/2021
#1
尽管评论中提到了所有问题,但有一种简单的方法可以实现这一目标。只需转到项目属性并定义默认命名空间:
现在,每个添加的类都定义了以下命名空间:
using System;
using System.Collections.Generic;
using System.Text;
namespace MyGlobalNamespae
{
class Class1
{
}
}
评论
2赞
DanielD
7/22/2021
这仍会将文件夹名称追加到命名空间。这仅用于项目命名空间的第一部分,但不会替换命名空间生成逻辑。
0赞
Gabriel Weidmann
7/22/2021
@DanielD 是的,这个解决方案与我要求的完全不同。
0赞
Gabriel Weidmann
9/20/2021
#2
我找到了一个我满意的解决方法:
我安装了这个不错的扩展 Visual Studio Namespace Fixer。它允许您为命名空间定义模板,然后可以将其应用于项目中的所有 .cs、.xaml 和其他文件。
在我定义了 的格式下。Options -> Namespace Fixer options -> Use default project namespace
{projectRootNamespace}
Namespace format
不仅我只需要在项目基本文件夹中选择我的文件和文件夹(在 Visual Studio 中,而不是在 Windows 资源管理器中),右键单击并选择,所有子文件夹中的所有文件都会将其命名空间更改为项目根命名空间:-)Adjust namespaces
如果在 NuGet 库中创建和使用大量类和其他文件,那就太棒了。
评论