我注意到 GAC 在我们的开发服务器和我的本地机器上的奇怪行为。我签署了一个程序集并使用 MSI 文件将其放入 GAC。当我运行我的应用程序时,它会找到程序集并加载它,并且应用程序运行正常。
作为测试,我决定从 GAC 中删除程序集并重新运行我的应用程序。奇怪的是,应用程序仍然运行,却没有告诉我找不到程序集。
我确保程序集不在应用程序的 bin 文件夹中。我仔细检查了 GAC 以确保它没有真正卸载。它确实卸载了,因为 GAC 文件夹中缺少程序集。除了在名为 c:\Windows\Assembly\temp\GPFPFRGYT 的奇怪文件夹中之外,服务器上没有程序集的踪迹。那么,当我清楚地看到它不再在 GAC 中时,为什么我的应用程序仍然在找到程序集(我使用的是 .NET 4.0,所以它在 C:\Windows\Microsoft.NET\assembly 中)。任何帮助,将不胜感激。谢谢。