我有一個班級只能通過反思與另一班級互動。我正在與之交流的這個班有一些代表,我正在設置他們。下面有他們的樣子:將班級成員設置爲功能
public class ClassThatIAmReflecting {
public delegate void OnSuccessDelegate(bool value);
public static OnSuccessDelegate OnSuccess;
public void OnClassThatIAmReflectingSuccess(bool arg) {
if(OnSuccess != null)
OnSuccess(arg);
}
}
這裏就是我想:
public class MyClass {
void Init() {
Type type = Type.GetType("ClassThatIAmReflecting");
FieldInfo fieldInfo = type.GetField("OnSuccess", BindingFlags.Public | BindingFlags.Static);
fieldInfo.SetValue(null, HandleOnSuccess);
}
void HandleOnSuccess(bool value) {
// do stuff ...
}
}
我得到的錯誤是,它無法將動作轉換爲對象。任何幫助我如何做到這一點?
什麼的onSuccess?請顯示其他類的代碼 –
OnSuccess正在通過從C++ dll調用的函數調用。 ClassThatIAmReflecting類是一個位於我的C#類和C++ dll之間的橋樑。 – Steph