I've been building .NET web applications for many years now, and I never use the GAC?
我多年来一直在构建.NET Web应用程序,我从不使用GAC?
What am I missing? Or am I better off staying away from it?
我错过了什么?或者我最好远离它?
3 个解决方案
#1
2
The GAC is only useful if you register libraries which you're going to reuse. It is in no way obligatory to use to run a WebApp without shared libraries .
只有在注册要重用的库时,GAC才有用。在没有共享库的情况下运行WebApp绝不是必须的。
#2
2
The GAC is mainly for storing shared libraries, especially when your application requires a specific version. This way, I could install FooLib 1.0 and FooLib 2.0 on the same machine, and applications that require either one could find the ones they want. Web applications don't seem to use a whole lot of external libraries anyways.
GAC主要用于存储共享库,尤其是当您的应用程序需要特定版本时。这样,我可以在同一台机器上安装FooLib 1.0和FooLib 2.0,而需要其中任何一台的应用程序都可以找到他们想要的那些。无论如何,Web应用程序似乎并没有使用大量的外部库。
In another example, SSIS requires that your custom tools are in the GAC. Major pain.
在另一个示例中,SSIS要求您的自定义工具位于GAC中。主要的痛苦。
#3
1
Like Vincent says, the GAC is important mostly for third-party library vendors who want to support servicing independent of client applications. In other words, if there's a bug in the library, you could upgrade the library and fix all applications that use the library, without having to know which applications they are, etc.
与Vincent说的一样,GAC主要用于希望独立于客户端应用程序提供服务的第三方库供应商。换句话说,如果库中存在错误,您可以升级库并修复使用该库的所有应用程序,而无需知道它们是哪些应用程序,等等。
In practice, most .NET applications (so far) are web applications, so it turns out that it's mostly useful for Microsoft, as few other people have routine ability to push updates to end-user machines.
实际上,大多数.NET应用程序(到目前为止)都是Web应用程序,因此事实证明它对Microsoft来说非常有用,因为很少有其他人能够将更新推送到最终用户计算机。
#1
2
The GAC is only useful if you register libraries which you're going to reuse. It is in no way obligatory to use to run a WebApp without shared libraries .
只有在注册要重用的库时,GAC才有用。在没有共享库的情况下运行WebApp绝不是必须的。
#2
2
The GAC is mainly for storing shared libraries, especially when your application requires a specific version. This way, I could install FooLib 1.0 and FooLib 2.0 on the same machine, and applications that require either one could find the ones they want. Web applications don't seem to use a whole lot of external libraries anyways.
GAC主要用于存储共享库,尤其是当您的应用程序需要特定版本时。这样,我可以在同一台机器上安装FooLib 1.0和FooLib 2.0,而需要其中任何一台的应用程序都可以找到他们想要的那些。无论如何,Web应用程序似乎并没有使用大量的外部库。
In another example, SSIS requires that your custom tools are in the GAC. Major pain.
在另一个示例中,SSIS要求您的自定义工具位于GAC中。主要的痛苦。
#3
1
Like Vincent says, the GAC is important mostly for third-party library vendors who want to support servicing independent of client applications. In other words, if there's a bug in the library, you could upgrade the library and fix all applications that use the library, without having to know which applications they are, etc.
与Vincent说的一样,GAC主要用于希望独立于客户端应用程序提供服务的第三方库供应商。换句话说,如果库中存在错误,您可以升级库并修复使用该库的所有应用程序,而无需知道它们是哪些应用程序,等等。
In practice, most .NET applications (so far) are web applications, so it turns out that it's mostly useful for Microsoft, as few other people have routine ability to push updates to end-user machines.
实际上,大多数.NET应用程序(到目前为止)都是Web应用程序,因此事实证明它对Microsoft来说非常有用,因为很少有其他人能够将更新推送到最终用户计算机。