我有一个名为LazyLoader <T>的对象.它连接到ORM以在需要时加载T类型的数据.有用.
LazyLoader <T>继承自ILazyLoader.
挑战:创建一个可以从Object类型加载Generic类型的工厂类.
如,
public ILazyLoader CreateLazyLoader(int id, Type typeToLoad)
{
return new LazyListLoader<typeToLoad>(id);
}
Run Code Online (Sandbox Code Playgroud)
问题:<typeToLoad>不接受Type对象.如何将Type <typeToLoad>转换为类似<T>的东西,其中T是typeToLoad?
var llType = typeof(LazyListLoader<>).MakeGenericType(typeToLoad);
return (ILazyLoader)Activator.CreateInstance(llType, id);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
212 次 |
| 最近记录: |