use Assembly to call a method

When using objectFactory,u may want to call a static method,but would not like to write a mass of interfaces to Show the method.Here,it's a way.

Code:
using System.Reflection;

try
{
Assembly asm =Assembly.Load("FC.Shared.Common");
Type t = asm.GetType("FC.Shared.Common.CMessage");
MethodInfo minfo=t.GetMethod("Send");
Object obj = Activator.CreateInstance(t);
//Object obj=asm.CreateInstance("FC.Shared.Common.CMessage");
minfo.Invoke(obj,new string []{"IMMsgOut","Sender","Recipient","hello","Body","BizBody"});

}
catch(Exception e)
{
MessageBox.Show(e.InnerException.Message);
throw e.InnerException;
}

Published At
Categories with Web编程
Tagged with
comments powered by Disqus