代码之家  ›  专栏  ›  技术社区  ›  wusher

为什么我不应该使用GAC?

  •  25
  • wusher  · 技术社区  · 17 年前

    在这方面有一些问题被问到,比如stackoverflow What are the advantages and disadvantages of using the GAC When and when-not to install into the GAC? 一些人在 expamle

    为什么我不应该使用GAC?

    7 回复  |  直到 9 年前
        1
  •  46
  •   Community Mohan Dere    6 年前

    Chris Sells可能给出 the best reason for avoiding the GAC

    休息!“当然,这绝对是真的。但如果是这样的话,你为什么在乎呢?我的意思是,如果有一个新的程序集可用,但你的应用程序没有接受它,这有什么区别呢?

    “啊哈,又来了!”你说。“我可以将发布者策略与我的程序集一起放入GAC中,以便应用程序

        2
  •  6
  •   Cristian Diaconescu    13 年前

    我们有一个50+的应用程序。NET程序集在任何给定时间加载,我们不使用GAC。我认为,如果你必须同时运行多个版本的应用程序,每个版本都需要加载同一共享库的不同版本,那么GAC是最有用的。

    我一直觉得它对那些制作SDK/neneneba API的人更有用,因为他们的SDK的不同版本可以被多个应用程序加载并和谐共存。因此,如果你在这艘船上,那么GAC可能是有意义的。

    有些边缘情况需要GAC(我认为在某些情况下.NET COM+组件需要在GAC中),但我认为这些只是其中的一小部分。

        3
  •  3
  •   Brian Rasmussen    17 年前

    如果您希望对应用程序进行侵入性较小的部署。只需在应用程序目录中安装,您就可以非常轻松地进行复制、部署和清理。

        4
  •  2
  •   Dillie-O    17 年前

    这将创建另一个我在卸载时需要检查的依赖关系,过去人们对滥用注册表的程序表示了很多不满。

    调试/维护也会更容易一些,因为您可以很容易地验证所有适当的库都在应用程序的可执行路径中。

        5
  •  2
  •   Community Mohan Dere    9 年前

    我问了类似的问题( Do I ever really need to use the Global Assembly Cache (GAC)?

    换言之, 如果您不打算在不同应用程序之间共享库,请不要使用它 .

        6
  •  2
  •   Wavare Santosh    15 年前

    GAC的用途是什么?

    ii)将相同的组件存储在机器上的多个位置会使用额外不必要的存储空间。将它们放在一个位置可以降低成本。 iii)在机器上服务程序集变得更简单,因为您只需更新一个位置(GAC),而无需搜索存储在机器上的程序集的多个实例。

        7
  •  1
  •   Apocalisp    17 年前

    有时在托管网站上,您无法控制GAC,一些托管提供商不允许您将任何程序集安装到GAC中。我以前遇到过这种情况,这是一个巨大的痛苦。

    推荐文章