【发布时间】:2014-08-08 10:07:31
【问题描述】:
奇怪的问题,我得到 System.TypeLoadException "Could not load type 'Color'":
using UnityEngine;
Type.GetType(typeof(Color).FullName, true);
当然,我不能只使用typeof(Color),代码证明了这个类型存在并且被加载并且它的名字是正确的。
typeof(Color).FullName == "UnityEngine.Color"。
我也试过了:
typeof(Color).Module.GetTypes().First(t => t.Name == "Color")
工作正常,但是
typeof(Color).Module.GetType("Color", true, false)
抛出TypeLoadException。所以我得出结论,这不是“完全限定名称”问题,而是其他问题。
我还尝试了来自 UnityEngine 程序集和另一个第 3 方程序集的其他类型。
我检查了 Mono 源代码,但相关代码是 C 实现的,很难快速理解。
【问题讨论】:
-
你能声明一个
Color类型的变量吗,即。放下反射,你还能用类型吗?
标签: c# reflection mono unity3d