我有名字,全名等 一个类型TDestination TSource获取泛型类型
我从一个转换到另一个像这样的方法临危一个泛型类型:
private static Type ConvertTypes<TSource>()
{
var mytype = typeof(TSource);
var newName = string.Format("{0}.{1}", Assembly.GetAssembly(typeof(Plugin)).FullName.Split(',')[0].ToString(), mytype .Name);
var newFullName = Assembly.GetAssembly(typeof(Plugin)).GetType(newName).FullName;
var TDestination = Type.GetType(newFullName);
return TDestination;
}
我需要使用它采用通用方法如Method<T>()
;
我试过一些编码,但我无法将Type转换为它的通用版本。
当我需要创建一个接收Func<TSource, bool>
的方法并且此func需要映射到Func<TDestination, bool>
时,这一切都开始了。
我收到一个Model类,并且必须将func转换为实体框架类的TDestination。
直到现在,没有成功。
有人吗?
所以你的目标类型有相同的类名,但它是不同的命名空间或程序集? – Maess
是的,你是对的,先生。相同的名称,不同的名称空间和程序集。 – programad
我建议你只需使用配置驱动的映射器在类型名称之间进行映射,然后就可以移除大部分昂贵的反射。 – Maess