none
System命名空间? RRS feed

  • 问题

  • 请教一个各位,如果我要使用某一个命名空间下的类,首先我要将这个命名空间添加引用到Bin里面去,像System,System.Data命名空间我怎么在Bin里面找不到啊,是系统自动引用到哪了呢?
    谢谢!!!

    2009年8月8日 12:51

答案

  • 那是因为那些程序集都是共用的

    GAC全称是Global Assembly Cache,他的作用是可以存放一些有很多程序都要用到的公共Assembly,例如System、System.Data、System.Windows.Forms 等等。这样,很多程序就可以从GAC里面取得Assembly,而不需要再把所有要用到的Assembly都拷贝到应用程序的执行目录下面。举例而言,如 果没有GAC,那么势必每个WinForm程序的目录下就都要从C:\WINDOWS\Microsoft.NET\Framework \v1.0.3705下面拷贝一份System.Windows.Forms.dll,这样显然不如都从GAC里面取用方便,也有利于Assembly的 升级和版本控制。
    【孟子E章】
    2009年8月8日 13:05
    版主

全部回复

  • 那是因为那些程序集都是共用的

    GAC全称是Global Assembly Cache,他的作用是可以存放一些有很多程序都要用到的公共Assembly,例如System、System.Data、System.Windows.Forms 等等。这样,很多程序就可以从GAC里面取得Assembly,而不需要再把所有要用到的Assembly都拷贝到应用程序的执行目录下面。举例而言,如 果没有GAC,那么势必每个WinForm程序的目录下就都要从C:\WINDOWS\Microsoft.NET\Framework \v1.0.3705下面拷贝一份System.Windows.Forms.dll,这样显然不如都从GAC里面取用方便,也有利于Assembly的 升级和版本控制。
    【孟子E章】
    2009年8月8日 13:05
    版主
  • 更多介绍,参见

    http://msdn.microsoft.com/zh-cn/library/yx7xezcf.aspx

    【孟子E章】
    2009年8月8日 13:07
    版主
  • 您好,程序集分为共享的和私有的两种。
    像System这样的程序集是共享的,被放到“全局程序集缓存(GAC)”中。
    1、请打开“开始”---〉“控制面板”---〉“管理工具”---〉“Microsoft .Net Framework 2.0配置”
    2、在“我的电脑”---〉“程序集缓存”中可以看到。
    2009年8月8日 13:10