using System.Reflection; namespace ServiceCenter.Extensions { /// /// 针对程序集操作的扩展 /// public static class AssemblyExtension { /// /// 删除重复的程序集 /// /// public static IEnumerable RemoveDuplicateAssemblies(this IEnumerable assemblies) { return assemblies.DistinctBy(p => p.FullName); } /// /// 删除指定名称的程序集 /// /// /// public static IEnumerable RemoveTheAssemblyNamespecified(this IEnumerable assemblyNames) { return assemblyNames.Where(p => p.Name != null && !p.Name.StartsWith("System.")) .Where(p => !p.Name.StartsWith("mscorlib.")) .Where(p => !p.Name.StartsWith("netstandard.")) .Where(p => !p.Name.StartsWith("Senparc.")) .Where(p => !p.Name.StartsWith("Newtonsoft.")) .Where(p => !p.Name.StartsWith("UnityEngine.")) .Where(p => !p.Name.StartsWith("ZKWeb.")) .Where(p => !p.Name.StartsWith("NPOI.")) .Where(p => !p.Name.StartsWith("ICSharpCode.")) .Where(p => !p.Name.StartsWith("NLog")) .Where(p => !p.Name.StartsWith("e_sqlite")) .Where(p => !p.Name.StartsWith("MsgPack.")) .Where(p => !p.Name.StartsWith("netstandard")) .Where(p => !p.Name.StartsWith("Jiguang")) .Where(p => !p.Name.StartsWith("StackExchange")) .Where(p => !p.Name.StartsWith("Microsoft.")) .Where(p => !p.Name.StartsWith("TIBCO.")); } } }