M. *_*ley 14 .net reflection types version
传入的程序集限定名称是否可以指定与实际加载的DLL版本不同的Type通道?如果是这样,那么行为是什么?Type.GetType()GetType()VersionGetType()
Type无论程序集是什么版本,我都希望从程序集中获取.我有一个函数,它获取一个程序集限定的名称作为参数:
Type someType = Type.GetType(someName);
Run Code Online (Sandbox Code Playgroud)
该someName值对应于Type我想要获取的值,但它可能与Version我的应用程序中加载的值不同.
小智 10
我成功地使用了这个:
Type type = Type.GetType(typeName, AssemblyResolver, null);
private static System.Reflection.Assembly AssemblyResolver(System.Reflection.AssemblyName assemblyName)
{
assemblyName.Version = null;
return System.Reflection.Assembly.Load(assemblyName);
}
Run Code Online (Sandbox Code Playgroud)
在测试中,我发现GetType()即使当前加载的程序集版本与程序集限定名称字段中的值不匹配,也会返回正确的类型Version。
| 归档时间: |
|
| 查看次数: |
4682 次 |
| 最近记录: |