C# C语言中的名称空间#
我正在使用一个ASP.NETMVC项目,每次我将一个类添加到一个文件夹中,它都会产生很长的名称空间 示例:C# C语言中的名称空间#,c#,C#,我正在使用一个ASP.NETMVC项目,每次我将一个类添加到一个文件夹中,它都会产生很长的名称空间 示例: Project = Tully.Saps.Data Folder = DataAccess/Interfaces Namespace = Tully.Saps.Data.DataAccess.Interfaces Folder = DataAccess/MbNetRepositories Namespace = Tully.Saps.Data.DataAccess.MbNet
Project = Tully.Saps.Data
Folder = DataAccess/Interfaces
Namespace = Tully.Saps.Data.DataAccess.Interfaces
Folder = DataAccess/MbNetRepositories
Namespace = Tully.Saps.Data.DataAccess.MbNetRepositories
问题:最好不要使用名称空间,而是将using子句添加到访问它的类中,或者将此项目中的所有内容的名称空间更改为Tully.Saps.Data?不要使用名称空间,而是添加usings。手动更改这样的内容(更难调试、与其他项目不一致等等)会给您带来麻烦。如何处理这些问题完全取决于您自己。如果您只打算访问一个名称空间的成员一两次,那么添加“using”语句对您来说真的没有多大帮助 如果要多次使用它,那么减少名称空间链可能会使内容更易于阅读
如果您只是希望在逻辑上将文件分组在一起,而不创建新的名称空间,则始终可以更改名称空间,这样它就不会添加新的文件夹名称。根据FXCop,我同意: 避免使用类型较少的名称空间 一个名称空间通常应该有五种以上的类型 另外(这也适用于“单一名称空间”的建议——这几乎等同于说没有名称空间) 在名称空间中声明类型 应在命名空间内定义类型以避免重复
- 名称空间
- 使用语句
为名称空间定义using语句是一个单独的决定,它取决于代码中引用该名称空间中的对象的频率,并且不应以任何方式影响我们的名称空间创建实践。不要管它。这是IDE如何决定编码风格的一个很好的例子 仅仅因为您使用的工具(Visual Studio)决定每个文件夹需要一个新名称空间,并不意味着您需要。
我个人倾向于将我的“数据”项目作为一个名称空间。如果我有一个名为“Model”的子文件夹,我不希望这些文件位于Something.Data.Model命名空间中,我希望它们位于Something.Data中