程序集生成失败 -- 引用的程序集“PetShop.ICacheDependency”没有强名称 TableCacheDependency强命名是怎么回事?

解决方案 »

  1.   

    .NET简化了应用程序的部署和版本支持问题。在.NET发布前,你通常会陷入DLL   Hell:在部署一个应用程序的新版本时,它的类库就会使以前的版本(有时是其它的应用程序)不能工作。通过对应用程序所用的一个特殊版本的程序集(assembly)做一定的处理,.NET架构师就明确地解决了这个问题。然而,如果你的应用程序运用的程序集是.NET程序集,那么.NET本身的不同版本就会影响你的应用程序。我将给你提供一些基本原则,你应该对它们有所了解,并采用一定的方法来保持你的应用程序的兼容性,并在可能的情况下,运用新的.NET版本(见工具条“.NET版本包括安全策略”)。   
        
      .NET提供了两种程序集——友好命名的程序集(friendly-named   assemblies)和强命名的程序集(strongly   named   assemblies)。作为特点,友好命名的类库程序集是位于运用它们的应用程序的目录中的。强命名的程序集包含它们的创建者的数字签名。数字签名是公钥和私钥加密的产物。强命名的程序集通常位于Global   Assembly   Cache(GAC)中。GAC可以包含同一个类库程序集的多个版本。强命名的程序集也可以位于应用程序目录中。每个程序集有一个程序集版本号,作为一个程序集属性   
    http://www.cnblogs.com/caizhanshu/articles/863267.html