C# 名称空间&;类名冲突
将类命名为命名空间的结尾时,最佳做法是什么 例如:C# 名称空间&;类名冲突,c#,namespaces,resharper,classname,C#,Namespaces,Resharper,Classname,将类命名为命名空间的结尾时,最佳做法是什么 例如: Successful.Domain.Resource { public class Resource {} } Successful.Data.Resource { public class Resources {} } 如果我想在Successful.Data命名空间中使用Resource类,我不能只引用我想要的资源。我需要声明其名称空间,如Domain.Resource.Resource
Successful.Domain.Resource {
public class Resource {}
}
Successful.Data.Resource {
public class Resources {}
}
如果我想在Successful.Data命名空间中使用Resource类,我不能只引用我想要的资源。我需要声明其名称空间,如Domain.Resource.Resource
我使用Resharper并在文件夹中构造所有代码,也就是说,我有这样的名称空间,文件夹结构示例:
Successful.Domain(名称空间)
- 资源(文件夹)
- 资源中心
- ResourceLocation.cs
- ResourceSettings.cs
- 资源(文件夹)
- 资源中心
您也可以通过以下方式查看本文:不建议对名称空间和类使用相同的名称 在本例中,我将名称空间命名为
Resources
注意,这是复数形式,因为名称空间提供了类型的逻辑分组
类名应该更具体。Resource
告诉您什么?嗯,没什么。正确命名类,类名应该传达它的功能。换句话说,它应该是不言自明的。如果我不知道这些资源是什么,我就想不出一个好名字
@Habib有很好的链接,所以我没有选择为您提供一些有用的链接。我不确定这是否有帮助,但您是否尝试过使用Successful.Domain.Resource=Rsrc代码>?这可能有助于避免名称冲突。我很好奇这是否有效——但不确定(因此还没有将其作为答案发布)。谢谢Habib的链接,这是对最佳实践的良好解释。@Habib谢谢链接。看起来Eric知道C#pretty good:)@OP在遵循Habib的建议后,更改文件夹结构以匹配名称空间不是个坏主意,除非你的应用程序是web应用程序。ReSharper有一个快速修复程序(可能还有一个全局修复程序)来为您完成此操作。