2
我該如何去調用泛型方法,只知道運行時的類型,然後調用返回類型的方法?我看了很多例子,但似乎無法得到它的工作。調用泛型方法並調用返回類型的方法
這是我到目前爲止。
public interface IDataMapper<TEntity> where TEntity : IEntity
{
void Update(TEntity entity);
}
public IDataMapper<TEntity> GetMapper<TEntity>() where TEntity : IEntity
{
// Return something of type IDataMapper<TEntity>
}
foreach (IEntity entity in _dirtyObjects)
{
MethodInfo method = typeof(MapperFactory).GetMethod("GetMapper");
MethodInfo generic = method.MakeGenericMethod(entity.GetType());
generic.Invoke(_mapperFactory, null);
// I now want to call the Update() method
// I have tried to cast to IDataMapper<IEntity> which results in a null ref ex
}
感謝您的任何建議。