2012-02-06 56 views
4

我有一個使用Assembly.LoadFrom加載的程序集。這個程序集包含幾個靜態方法,一旦程序集加載正確,我怎樣才能調用它們。如何在使用反射時調用方法?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace ReflectionSandbox 
{ 
    public class Class1 
    { 
     public static void TestAPI() 
     { 
      Console.WriteLine("TestAPI"); 
     } 
    } 
} 
+0

你的意思是程序集包含靜態方法在其中的靜態類? – Dervall 2012-02-06 14:28:10

+0

@Dervall:爲什麼班級應該是靜態的? – Heinzi 2012-02-06 14:28:54

+0

@海因西:你說得對,沒關係。 – Dervall 2012-02-06 14:31:43

回答

5
someAssembly.GetType(someName).GetMethod(someName).Invoke(null, someParameters) 

null是實例(this)參數;靜態方法必須爲空。

+0

GetType或GetMethod正在返回一個空引用。如果沒有傳入名稱的方法/類型,就會發生這種情況。 – haiyyu 2012-02-06 14:36:54

相關問題