public void AddDependency(string name, FourPartVersion version, Architecture arch, string publicKeyToken, string language = "*", AssemblyType assemblyType = AssemblyType.win32, BindingRedirect bindingRedirect = null) { if (!(from dat in DependentAssemblyElements let assemblyIdentity = new AssemblyIdentity(dat) where assemblyIdentity.Name == name && assemblyIdentity.Version == version && assemblyIdentity.Architecture == arch && assemblyIdentity.PublicKeyToken == publicKeyToken && ((language == "*" && string.IsNullOrEmpty(assemblyIdentity.Language)) || assemblyIdentity.Language == language) select assemblyIdentity).Any()) { // add another. var dat = new XElement(DependencyTag, new XElement(DependentAssemblyTag)); var identity = new AssemblyIdentity(dat.Elements().FirstOrDefault()) { AssemblyType = assemblyType, Name = name, Version = version, Architecture = arch, PublicKeyToken = publicKeyToken, Language = language, BindingRedirect = bindingRedirect }; _parentElement.Add(dat); } }
public void AddDependency(string name, FourPartVersion version, Architecture arch, string publicKeyToken, string language = "*", AssemblyType assemblyType = AssemblyType.win32, BindingRedirect redirect = null) { Modified = true; _dependentAssemblies.AddDependency(name, version, arch, publicKeyToken, language, assemblyType, redirect); }