把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 })); }