把DLL加载到内存可解决问题。
void T1()
{
var p = @"D:\Document\Unity\TestDll\bin\Release\TestDll.dll";
byte[] bin;
using (var fs = new FileStream(p, FileMode.Open))
{
using (var br = new BinaryReader(fs))
{
bin = br.ReadBytes(Convert.ToInt32(fs.Length));
}
}
var assembly = Assembly.Load(bin);
var t = assembly.GetType("TestDll.test");
var instance = Activator.CreateInstance(t);
var m = t.GetMethod("add");
Debug.Log(m.Invoke(instance, new object[] { 1, 2 }));
}