我是否真的需要使用全局程序集缓存(GAC)?

时间:2008-11-24 10:35:05

标签: asp.net deployment global-assembly-cache

我多年来一直在构建.NET Web应用程序,我从不使用GAC?

我错过了什么?或者我最好远离它?

3 个答案:

答案 0 :(得分:2)

GAC仅在您注册要重用的库时才有用。在没有共享库的情况下运行WebApp绝不是必须的。

答案 1 :(得分:2)

GAC主要用于存储共享库,尤其是当您的应用程序需要特定版本时。这样,我可以在同一台机器上安装FooLib 1.0和FooLib 2.0,而需要其中一台的应用程序可以找到他们想要的那些。无论如何,Web应用程序似乎并没有使用大量的外部库。

在另一个示例中,SSIS要求您的自定义工具位于GAC中。主要的痛苦。

答案 2 :(得分:1)

与文森特所说,GAC主要对于希望独立于客户端应用程序提供支持服务的第三方库供应商而言非常重要。换句话说,如果库中存在错误,您可以升级库并修复使用该库的所有应用程序,而无需知道它们是哪些应用程序等。

在实践中,大多数.NET应用程序(到目前为止)都是Web应用程序,因此事实证明它对Microsoft来说非常有用,因为很少有其他人能够将更新推送到最终用户计算机。