C# ReSharper调整/重构名称空间,不考虑其中包含空格的文件夹
我正在尝试使用ReSharper 8.2重构项目中的名称空间。我正在使用C# ReSharper调整/重构名称空间,不考虑其中包含空格的文件夹,c#,visual-studio-2010,refactoring,resharper,C#,Visual Studio 2010,Refactoring,Resharper,我正在尝试使用ReSharper 8.2重构项目中的名称空间。我正在使用Refactor->Adjust Namespaces选项,这真是太棒了,但是当项目中的文件夹有空格时,它似乎不起作用。使用此项目结构(在VS中): 我在CodeFile.cs中的新名称空间将是Project.ASubFolder,而如果我有这个结构 Project | |-SomeFolder | |-ASubFolder | |-CodeFi
Refactor->Adjust Namespaces
选项,这真是太棒了,但是当项目中的文件夹有空格时,它似乎不起作用。使用此项目结构(在VS中):
我在CodeFile.cs
中的新名称空间将是Project.ASubFolder
,而如果我有这个结构
Project
|
|-SomeFolder
|
|-ASubFolder
|
|-CodeFile.cs
名称空间被适当地重命名为Project.SomeFolder.ASubFolder
。我已检查是否在所有文件夹上设置了命名空间提供程序
属性。重构时,如何强制R#使用带有空格的文件夹
编辑:我在第一个场景中的预期输出是
Project.SomeFolder.ASubFolder
。我希望ReSharper只删除空格。命名空间中不能有空格(即Project.Some文件夹。ASubFolder
无效)
因此,无论ReSharper在这种情况下做了什么(例如忽略空格),最终都会导致文件夹结构和名称空间不匹配。如果文件夹名称包含空格,则完全忽略该名称似乎与任何其他解决方案一样合理
在文件夹名称中使用空格只会在以后使用其他工具时造成问题,因此如果可以,最好避免使用空格。命名空间中不能使用空格(即
Project.Some folder.ASubFolder
将无效)
因此,无论ReSharper在这种情况下做了什么(例如忽略空格),最终都会导致文件夹结构和名称空间不匹配。如果文件夹名称包含空格,则完全忽略该名称似乎与任何其他解决方案一样合理
在文件夹名称中使用空格只会在以后使用其他工具时给您带来问题,因此,如果可以,最好避免使用空格。我的团队最终解决此问题的方法是用下划线替换文件夹名称中的空格
因为VisualStudio约定在文件夹中存在空间的名称空间中使用下划线,所以已经使用正确名称空间的任何类都不必更改。因为空间已经消失,我们可以自由地运行ReSharper的修复名称空间,以便为其余的类获得相同的结果。我的团队最终解决这个问题的方法是用下划线替换文件夹名称中的空间
因为VisualStudio约定在文件夹中存在空间的名称空间中使用下划线,所以已经使用正确名称空间的任何类都不必更改。因为空间已经消失,我们可以自由地运行ReSharper的修复名称空间,以便为其余类获得相同的结果。我知道名称空间中不能有空间。对于顶部和底部场景,我对输出的期望是
Project.SomeFolder.ASubFolder
。我希望R#在重构时只移除空间。因此,显然你对这种未定义行为的期望与R#的设计者不同。这就是我提出这个问题的原因。事实上,这就是为什么大多数人会问这样的问题:“这种情况正在发生,我该如何修复它?”。我知道名称空间中不能有空格。对于顶部和底部场景,我对输出的期望是Project.SomeFolder.ASubFolder
。我希望R#在重构时只移除空间。因此,显然你对这种未定义行为的期望与R#的设计者不同。这就是我提出这个问题的原因。事实上,这就是为什么大多数人会问这样的问题:“这正在发生,我该如何修复它?”。我实际上希望Project.Some_Folder.ASubFolder
,因为这是Visual Studio在向文件夹添加新项时使用的默认命名空间。是的,即使这样也有效。我不希望同时删除名称。实际上,我希望使用项目.Some_Folder.ASubFolder
,因为在Visual Studio中将新项目添加到文件夹时,这是默认名称空间。是的,即使这样也会有效。仅仅删除所有名称是不可取的。
Project
|
|-SomeFolder
|
|-ASubFolder
|
|-CodeFile.cs