C#の動的コードは
を実行します javascriptの
関数と同様に、C#はRoslynスクリプトAPIを使用して動的コードを実装できます。このAPIを使用すると、実行時にC#コードを動的にコンパイルおよび実行できます。
eval()
例:
整数変数と「Property1」、「Property2」、「Property3」などの複数の属性があるとします。 「プロパティ
i」属性でi
値に応じて操作を実行する必要があります。 i
RoslynスクリプトAPIを使用した
この例は、アセンブリを動的にロードし、値に従って属性にアクセスします。
<code class="language-csharp">// 添加NuGet包 'Microsoft.CodeAnalysis.Scripting' using Microsoft.CodeAnalysis.CSharp.Scripting; await CSharpScript.EvaluateAsync($"System.Reflection.Assembly.LoadFrom(\"{new FileInfo(\"your-assembly-to-load.dll\").FullName}\")"); await CSharpScript.RunAsync($"var propertyValue = typeof(YourType).GetProperty(\"Property{i}\").GetValue(yourTypeInstance);");</code>その他の関数:
i
以前にコンパイルされたコードを引用することもできます:
以上がjavascriptのeval()のようなC#で動的コード実行を達成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。