在C#中,可以使用AppDomain类来重新载入程序集。以下是重新载入程序集的步骤:
- 创建一个新的AppDomain对象来加载程序集。
- 使用AppDomain对象的Load方法加载程序集。
- 使用AppDomain对象的Unload方法卸载旧的AppDomain对象。
- 通过新的AppDomain对象来操作重新载入的程序集。
下面是一个简单的示例代码:
using System; using System.Reflection; class Program { static void Main() { // 创建一个新的AppDomain对象 AppDomain newDomain = AppDomain.CreateDomain("NewDomain"); // 加载程序集 Assembly assembly = newDomain.Load("YourAssemblyName"); // 卸载旧的AppDomain对象 AppDomain.Unload(AppDomain.CurrentDomain); // 通过新的AppDomain对象来操作重新载入的程序集 // 例如,创建实例并调用方法 Type type = assembly.GetType("YourNamespace.YourClass"); dynamic instance = Activator.CreateInstance(type); instance.YourMethod(); // 卸载新的AppDomain对象 AppDomain.Unload(newDomain); } }
请注意,在实际应用中,需要根据具体的需求和场景来调整代码以确保程序正常运行。