我有名字,全名等 一個類型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