无法从泛型类调用动态方法

时间:2010-07-19 16:07:53

标签: .net generics

我正在尝试在通用存储库中使用两个上下文,我应该使用动态类型GetObjectContext()调用静态方法ObjectContextManager<DynamicType>.GetObjectContext()

private DataContext GetDataContext()
    {
        Type type = GetContainerType();
        Type paoloGenericClassType = typeof(ObjectContextManager<>).MakeGenericType(type);

        MethodInfo method = paoloGenericClassType.GetMethod("GetObjectContext", BindingFlags.Static);
        return method.Invoke(null, BindingFlags.Static, null, null, null) as DataContext;
    }

我尝试了不同的变体,但它不起作用。我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

我怀疑问题只是你的绑定标志。试试BindingFlags.Static | BindingFlags.Public,假设它是一种公共方法。

如果这不起作用,请告诉我们实际发生了什么,而不仅仅是说它不起作用。

答案 1 :(得分:0)