为什么有的namespace会跨dll而存在?
比如命名空间IO下有些类存在于MSCorLib.dll内,而有些存在于System.dll内呢?

解决方案 »

  1.   

    你可以写两个项目,两个项目都用同一个namespace,那么就实现了跨DLL存在了。
      

  2.   

    我想问的是为什么Framework要这么设计呢?
    比如说我查阅MSDN发现某个类A和B是属于同一个命名空间的,而我已经引用过该命名空间所在的dll了,我自然就认为键入B就可以得到intelligence的帮助,但是没有,我还得引入另一个dll才行,这样不就给程序员造成困惑了吗?
      

  3.   

    namespace A
    {
    namespace A1
    {
    public class Print
    {}
    }
      

  4.   

    wuyq11是来搅浑水的吗?贴出那种错的离谱的代码。为什么Framework要这么设计呢? 
    应该是迫不得已的,比如微软第一个版本写好了以后,下一个版本要对前面这个版本扩展,又不能随便把前面的版本给覆盖了,为了保证兼容性,就再发布一个dll文件,你引用它,那么同样的命名空间内的类和方法就会变多了,不引用它也可以,让以前的代码正常工作。
      

  5.   

    哦,这个make sense,O(∩_∩)O谢谢
      

  6.   

    我觉得也是这个原因,.net4.0里就应该不会存在这种问题了,4.0是可以选择版本的。