惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

爱范儿
爱范儿
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
WordPress大学
WordPress大学
Y
Y Combinator Blog
I
InfoQ
美团技术团队
罗磊的独立博客
B
Blog RSS Feed
GbyAI
GbyAI
小众软件
小众软件
IT之家
IT之家
Engineering at Meta
Engineering at Meta
Blog — PlanetScale
Blog — PlanetScale
V
V2EX
Last Week in AI
Last Week in AI
酷 壳 – CoolShell
酷 壳 – CoolShell
Jina AI
Jina AI
MyScale Blog
MyScale Blog
博客园 - 聂微东
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
The GitHub Blog
The GitHub Blog
T
The Blog of Author Tim Ferriss

博客园 - jirong

SQL2005 读取 XML 数据 SHTML 教程 automation服务器不能创建对象 加密存储过程,函数,触发器,视图的破解 - jirong - 博客园 SQLServer和Oracle的常用函数对比 窗口最大化 - jirong - 博客园 存储过程编写经验和优化措施 ASP.NET 2.0 Internet安全之参考实现 常用正则表达式 - jirong - 博客园 对象序列化 游标的用法 javascript事件查询 JavaScript就这么回事 ASP.NET2.0+SQL Server2005构建多层应用 Microsoft .NET Pet Shop 4 架构与技术分析 分页控件 ASP.NET 调味品:AJAX 我写的第一个CodeSmith模板(添加修改数据页面) CodeSmith应用(四):实现选择路径对话框
C#动态方法调用 - jirong - 博客园
jirong · 2007-07-07 · via 博客园 - jirong

Class1.cs

using System;
class Class1{
       public static String method1()
       {
           return "I am Static method (method1) in class1";
       }
       public String method2()
       {
           return "I am a Instance Method (method2) in Class1";
       }
       public String method3(String s)
       {
          return "Hello " + s;
       }
}
save this file as Class1.cs and Compile c:/>csc /t:library Class1.cs

DynaInvoke.cs

using System;
using System.Reflection;
class DynamicInvoke
{
public static void Main(String [] args)
{

String path = "Class1.dll"
Assembly a = Assembly.Load(path);

//Invoking a static method
Type mm = a.GetType("Class1");
String i = (String) mm.InvokeMember ("method1",BindingFlags.Default | BindingFlags.InvokeMethod,null,null,new object [] {}); Console.WriteLine(i);

//Invoking a non-static method
object o = Activator.CreateInstance(mm);
i = (String) mm.InvokeMember("method2",BindingFlags.Default | BindingFlags.InvokeMethod,null,o,new object [] {});
Console.WriteLine(i);

//Invoking a non-static method with parameters
object [] par = new object[] {"kunal"};
i = (String) mm.InvokeMember("method3",BindingFlags.Default | BindingFlags.InvokeMethod,null,o,par);
Console.WriteLine(i);
}
}