AppDomain.CreateInstance()方法是在指定的AppDomain中创建一个新的实例对象。该方法的参数是一个字符串,指定要创建的实例的类型名称。
下面是一个使用AppDomain.CreateInstance()方法创建实例对象的示例代码:
using System;
using System.Reflection;
public class MyClass
{
public void MyMethod()
{
Console.WriteLine("Hello from MyClass!");
}
}
class Program
{
static void Main(string[] args)
{
// 创建一个新的AppDomain
AppDomain domain = AppDomain.CreateDomain("MyAppDomain");
// 在新的AppDomain中创建一个实例对象
object instance = domain.CreateInstanceAndUnwrap(typeof(MyClass).Assembly.FullName, typeof(MyClass).FullName);
// 转换为MyClass类型并调用方法
MyClass myObject = (MyClass)instance;
myObject.MyMethod();
// 卸载AppDomain
AppDomain.Unload(domain);
}
}
上述代码会在新的AppDomain中创建一个名为"MyAppDomain"的AppDomain,并使用CreateInstanceAndUnwrap()方法创建一个MyClass类型的实例对象。然后,通过类型转换将实例对象转换为MyClass类型,并调用其中的方法。
需要注意的是,AppDomain.CreateInstance()方法还有其他重载形式,可以传递更多的参数来指定创建实例对象时所需的构造函数参数等。具体的使用方式可以根据实际需求进行调整。