zoukankan      html  css  js  c++  java
  • 获取assemblies信息in .net core

    using System;
    using System.Linq;
    using System.Reflection;
    using System.Runtime.Loader;
    using Microsoft.Extensions.DependencyModel;
    
    namespace AssemblyLoadingDynamic
    {
        public class Program
        {
            public static void Main(string[] args)
            {
                var asl = new AssemblyLoader();
                var asm = asl.LoadFromAssemblyPath(@"C:LocationOf" + "SampleClassLib.dll");
    
                var type = asm.GetType("MyClassLib.SampleClasses.Sample");
                dynamic obj = Activator.CreateInstance(type);
                Console.WriteLine(obj.SayHello("John Doe"));
            }
    
            public class AssemblyLoader : AssemblyLoadContext
            {
                // Not exactly sure about this
                protected override Assembly Load(AssemblyName assemblyName)
                {
                    var deps = DependencyContext.Default;
                    var res = deps.CompileLibraries.Where(d => d.Name.Contains(assemblyName.Name)).ToList();
                    var assembly = Assembly.Load(new AssemblyName(res.First().Name));
                    return assembly;
                }
            }
        }
    }
  • 相关阅读:
    2020.10.08 模拟赛 题解
    可爱路径 题解
    飞行路线 题解2
    架设电话线 题解
    浅谈 LCA
    浅谈 Tarjan 算法之强连通分量(危
    初赛题目整理1
    【求助,待续!】holes
    【题解】HDU4467
    【题解】zhx154嬲
  • 原文地址:https://www.cnblogs.com/94cool/p/5779283.html
Copyright © 2011-2022 走看看