当您在visual studio中创建一个新类时,它将包含一个名称空间定义,该定义从项目属性中设置的默认名称空间中提取。但是,如果您删除名称空间定义,则它将选择默认名称空间。移除它是否安全并将它留在那里有什么好处?从Visual Studio中的新类中删除命名空间定义是否安全?
0
A
回答
1
在c#中,类不会自动使用默认名称空间,而是会驻留在通常为no的全局名称空间中建议。
在VB.NET中,类将自动使用默认名称空间而不是全局名称空间,并且很安全,但这不是最佳实践。正如Pavel Minaev在下面提到的那样...
在VB上下文中,它是安全的,但一个好的经验法则是“显式比隐式更好”。就我个人而言,我总是发现VB隐式名称空间和导入是错误代码的一个很好的例子,它们会妨碍代码的可读性而不是简洁。但是,当然,这是非常主观的。
0
一般而言,它不会选取默认名称空间。一般来说,它将其放入全局命名空间中,这不是同一件事。
如果您希望该类位于名称空间中,请将namespace
保留原位。
3
在VB上下文中,它是安全的,但一个好的经验法则是“显式比隐式更好”。就我个人而言,我总是发现VB隐式名称空间和导入是错误代码的一个很好的例子,它们会妨碍代码的可读性而不是简洁。但是,当然,这是非常主观的。
1
理论上它是可能的和合法的,但是......它只是不好:)(在99%的情况下)。在编写代码时,将其“打包”到某个名称空间中很不错。
此外,您不会有名字冲突FE问题(2类具有相同的名字 - 法律和管理的,如果你会在不同的命名空间让他们
基本上:
1.在全局命名空间中拥有的东西是没有的。很好(与“默认”命名空间不同)
2.命名空间允许您更容易地管理代码(这是一个好处,即使是默认的命名空间也不会删除它)
3.命名空间有助于解析名称冲突等
相关问题
- 1. Visual Studio中表单的命名空间
- 2. 命名空间从XSLT中删除
- 3. Visual Studio和命名空间
- 4. 在C++中删除类型名称的命名空间
- 5. 从不同命名空间的插件类中删除操作
- 6. 在Visual Studio中显示命名空间的类(C#)
- 7. 删除命名空间
- 8. XSLT删除命名空间
- 9. Visual Studio资源生成 - 自定义工具命名空间
- 10. 从Visual Studio中删除项目类型
- 11. 删除Android Studio中的.gradle文件夹是否安全?
- 12. 命名空间中的类
- 13. StringBuilder命名空间,c#,visual studio 2010
- 14. Visual Studio 2015 UnitTesting命名空间缺失?
- 15. 命名空间。设置Visual Studio项目
- 16. 自定义WPF命名空间映射在Visual Studio 2010中失败
- 17. 是否可以在Visual Studio UML中放置名称空间?
- 18. C#完全限定的命名空间与小命名空间
- 19. 定义命名空间:: int类
- 20. Visual Studio:全局命名空间优先于本地
- 21. 从wcf中删除不必要的xsi和xsd命名空间
- 22. 从soapenv中删除多余的XML命名空间:Body
- 23. 从生成的XML在.NET中删除命名空间
- 24. 如何从元素中删除的命名空间
- 25. 在代码中定义命名空间
- 26. 命名空间中定义和实施
- 27. 从WebService中删除名称空间
- 28. 使用Ninject.InSingletonScope()在定义的命名空间中的所有类
- 29. 在迭代过程中从SortedList中删除是否安全
- 30. 删除/ refs/heads/review/*在git中删除分支是否安全?
这是VB.NET吗? – 2009-07-22 01:27:15
要么我发现两者都是相同的,即我可以从类文件中删除命名空间,在对象浏览器中搜索类并查看该类实际上驻留在默认名称空间中 – 2009-07-22 01:38:35
实际上,仔细看c#和vb .net的行为有所不同。因为我的程序集与默认名称空间的名称相同,所以类似乎属于名称空间,但实际上在c#中的全局名称空间中。在vb.net中,相同的代码似乎将该类添加到默认名称空间而不是全局名称空间。 – 2009-07-22 01:55:21