/// <summary> /// Returns true if the given two assembly references are to be considered equivalent. /// </summary> public static bool AssembliesAreEquivalent(IAssemblyReference /*?*/ assembly1, IAssemblyReference /*?*/ assembly2) { if (assembly1 == null || assembly2 == null) { return(false); } if (assembly1 == assembly2) { return(true); } if (assembly1.Name.UniqueKeyIgnoringCase != assembly2.Name.UniqueKeyIgnoringCase) { return(false); } if (!assembly1.Version.Equals(assembly2.Version)) { return(false); } if (!assembly1.Culture.Equals(assembly2.Culture)) { return(false); } return(IteratorHelper.IEquatableEnumerablesAreEqual(assembly1.PublicKeyToken, assembly2.PublicKeyToken)); }