While executing the following code i gets this error "Late bound operations cannot be performed on types or methods for which ContainsGenericParameters is true."
class Program
{
    static void Main(string[] args)
    {
        MethodInfo MI = typeof(MyClass).GetMethod("TestProc");
        MI.MakeGenericMethod(new [] {typeof(string)});
        MI.Invoke(null, new [] {"Hello"});
    }
}
class MyClass
{
    public static void TestProc<T>(T prefix) 
    {
        Console.WriteLine("Hello");
    }
}
The above code is just a scaled version of the actual problem i am facing. Please help.
 
     
    