你还没搞清命名空间和程序集的关系呢
引用中的System.Data是一个文件名,全名是System.Data.dll,也是一个程序集,里面包括的不仅仅是System.Data这个命 名空间,还有System命名空间、System.Data.SqlClient命名空间等等
一个.dll文件中只有一个命名空间,且和文件名相同只是一个特例,而且命名空间没必要和文件名相同,也就是说你引用了一 Wrox.WebModules.Core.dll里面完全可以不包括Wrox.WebModules.Core这个命名空间。引用中列出的只是程序集的 名称,不能列出这个程序集中的命名空间
程序集和命名空间实际上没有什么关系。程序集是.NET中相关类型的物理组织形式,有点类似于Windows的可执行文件或者动态链接库文件。命名空
间仅仅只是为了解决类名称的冲突问题而提供的给类“分类”的系统。一个程序集可以包含多个命名空间,而一个命名空间也可以跨多个程序集。