共享位置和GAC之间有什么区别吗?

时间:2010-08-26 04:29:56

标签: .net caching assemblies

.NET程序集存储在共享位置和GAC时有什么区别?

1 个答案:

答案 0 :(得分:1)

将程序集放在共享单个文件夹中并将它们放在GAC中的区别:

  • GAC中的程序集位置必须是强类型
  • 加载组件时,CLR通常会在考虑其他位置之前先检查GAC并装入组件。
  • 您可以在GAC中放置同一程序集的多个版本(例如,您可以在GAC中同时拥有程序集MyLibrary.dll的v1.0和v2.0)
  • CLR知道GAC中的支票,但是如果没有先告诉它该文件夹在哪里,它就不会知道签入您的共享单个文件夹。

有关GAC的更多信息,本文可能有用:

使用GAC可以解决许多问题(包括您甚至不知道的问题)。如果您正在考虑尝试将程序集存储在某个全局程序集文件夹(或简称GAF)中,那么我强烈建议您只使用GAC,除非您有非常的理由不这样做。