带有类型参数的反射 GetMethod
Reflection GetMethod with a type paramenter
下一行 运行 不正确,我不确定为什么。错误:
System.Reflection.TargetParameterCountException: 参数不匹配签名
有问题的代码行:
typeof(Resources).GetMethod("LoadAll", new Type[] { typeof(System.String), typeof(System.Type)});
显示资源的所有功能class显示:
UnityEngine.Object[] FindObjectsOfTypeAll(System.Type)
T[] FindObjectsOfTypeAll[T]()
UnityEngine.Object Load(System.String)
T Load[T](System.String)
UnityEngine.Object Load(System.String, System.Type)
UnityEngine.ResourceRequest LoadAsync(System.String)
UnityEngine.ResourceRequest LoadAsync[T](System.String)
UnityEngine.ResourceRequest LoadAsync(System.String, System.Type)
UnityEngine.Object[] LoadAll(System.String, System.Type)
UnityEngine.Object[] LoadAll(System.String)
T[] LoadAll[T](System.String)
UnityEngine.Object GetBuiltinResource(System.Type, System.String)
T GetBuiltinResource[T](System.String)
Void UnloadAsset(UnityEngine.Object)
UnityEngine.AsyncOperation UnloadUnusedAssets()
Boolean Equals(System.Object)
Int32 GetHashCode()
System.Type GetType()
System.String ToString()
System.Reflection.MethodInfo[]
我正在尝试匹配 UnityEngine.Object[] LoadAll(System.String, System.Type)。有什么想法可能是什么问题吗?
如果您可以制作一行 returns 特定于给定类型的 "T[] LoadAllT" 的 methodinfo 对象,则会获得奖励。
问题是您试图在 LoadAll 是静态的情况下获取实例级方法。
试试这个:
typeof(Resources).GetMethod("LoadAll",
System.Reflection.BindingFlags.Static,
new Type[] { typeof(System.String),typeof(System.Type)},
null);
下一行 运行 不正确,我不确定为什么。错误: System.Reflection.TargetParameterCountException: 参数不匹配签名
有问题的代码行:
typeof(Resources).GetMethod("LoadAll", new Type[] { typeof(System.String), typeof(System.Type)});
显示资源的所有功能class显示:
UnityEngine.Object[] FindObjectsOfTypeAll(System.Type)
T[] FindObjectsOfTypeAll[T]()
UnityEngine.Object Load(System.String)
T Load[T](System.String)
UnityEngine.Object Load(System.String, System.Type)
UnityEngine.ResourceRequest LoadAsync(System.String)
UnityEngine.ResourceRequest LoadAsync[T](System.String)
UnityEngine.ResourceRequest LoadAsync(System.String, System.Type)
UnityEngine.Object[] LoadAll(System.String, System.Type)
UnityEngine.Object[] LoadAll(System.String)
T[] LoadAll[T](System.String)
UnityEngine.Object GetBuiltinResource(System.Type, System.String)
T GetBuiltinResource[T](System.String)
Void UnloadAsset(UnityEngine.Object)
UnityEngine.AsyncOperation UnloadUnusedAssets()
Boolean Equals(System.Object)
Int32 GetHashCode()
System.Type GetType()
System.String ToString()
System.Reflection.MethodInfo[]
我正在尝试匹配 UnityEngine.Object[] LoadAll(System.String, System.Type)。有什么想法可能是什么问题吗?
如果您可以制作一行 returns 特定于给定类型的 "T[] LoadAllT" 的 methodinfo 对象,则会获得奖励。
问题是您试图在 LoadAll 是静态的情况下获取实例级方法。
试试这个:
typeof(Resources).GetMethod("LoadAll",
System.Reflection.BindingFlags.Static,
new Type[] { typeof(System.String),typeof(System.Type)},
null);