kenal kenal
kenal kenal

Reputation: 3

How to call reflection method

Is there an easier way to call reflection method instead of create methodInfo and object array as per below?

Assembly asm = Assembly.Load("Test");
Type t= asm.GetType("test.myclass");
object obj = Activator.CreateInstance(t);
MethodInfo mi = t.GetMethod("foo");
object[] args = { 10, 70 };
Console.WriteLine("output {0}", mi.Invoke(obj, args));

Upvotes: 0

Views: 88

Answers (1)

Harminder
Harminder

Reputation: 2229

Use dynamic keyword:

Assembly asm = Assembly.Load("Test");
Type t = asm.GetType("test.myclass");
dynamic obj = Activator.CreateInstance(t);
Console.WriteLine("output {0}", obj.Foo(10, 70));

Upvotes: 4

Related Questions