Exemplo n.º 1
0
        /// <summary>
        /// Load assembly by name
        /// </summary>
        public override Assembly Load(string name)
        {
            name = ReplacementAssemblies.GetOrDefault(name, name);
            var assembly = Context.LoadFromAssemblyName(new AssemblyName(name));

            return(HandleLoadedAssembly(assembly));
        }
Exemplo n.º 2
0
        /// <summary>
        /// Load assembly by name<br/>
        /// 根据名称加载程序集<br/>
        /// </summary>
        public override Assembly Load(string name)
        {
            // Replace name if replacement exists
            name = ReplacementAssemblies.GetOrDefault(name, name);
            Assembly assembly = null;

            try {
                // Try load directly
                assembly = Load(new AssemblyName(name));
            } catch {
                // If load failed, add suffixes and try again
                foreach (var suffix in PossibleAssemblyNameSuffixes)
                {
                    try {
                        assembly = Load(new AssemblyName(name + suffix));
                        break;
                    } catch {
                    }
                }
                if (assembly == null)
                {
                    throw;
                }
            }
            return(HandleLoadedAssembly(assembly));
        }
Exemplo n.º 3
0
        /// <summary>
        /// Load assembly by name
        /// </summary>
        public Assembly Load(string name)
        {
            // Replace name if replacement exists
            name = ReplacementAssemblies.GetOrDefault(name, name);
            var assembly = Context.LoadFromAssemblyName(new AssemblyName(name));

            LoadedAssemblies.Add(assembly);
            return(assembly);
        }