PHP は文字列を介して関数を簡単に呼び出すことができます。では、C# でこの関数を実装できるでしょうか?
はい、リフレクションを使用すると、文字列を介してメソッドを動的に実行できます。その方法は次のとおりです:
<code class="language-csharp">Type thisType = this.GetType(); MethodInfo theMethod = thisType.GetMethod(TheCommandString); theMethod.Invoke(this, userParameters);</code>
このコードは、メソッド名の文字列表現を使用してメソッドの MethodInfo を取得するため、機能します。
非パブリック メソッドを呼び出す必要がある場合は、BindingFlags を使用します。
<code class="language-csharp">MethodInfo theMethod = thisType .GetMethod(TheCommandString, BindingFlags.NonPublic | BindingFlags.Instance); theMethod.Invoke(this, userParameters);</code>
これは、メソッドが非パブリックでインスタンス固有であることを指定します。
以上がC# はリフレクションを使用して文字列から関数を動的に呼び出すことができますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。