実行時に C# 式を動的に評価するためのヒント
ソフトウェア開発では、実行時に C# 式を動的に評価する必要がある場合があります。この記事では、最新の効率的なソリューションを提供します。
従来のアプローチでは通常、CSharpCodeProvider
を使用して式をコンパイルして実行しますが、このアプローチは時代遅れであり、最新の C# のベスト プラクティスに準拠していません。
より良いアプローチは、Roslyn Scripting API を利用することです。この API は、C# スクリプトと式を動的に評価するための専用エンジンを提供し、式の評価プロセスを簡素化します。
<code class="language-csharp">using Microsoft.CodeAnalysis.CSharp.Scripting; var result = CSharpScript.EvaluateAsync("1 + 3").Result;</code>
この例では、式「1 3」を評価し、結果を result
変数に割り当てます。 特定のデータ型のコード フラグメントを評価するには、対応する汎用メソッドを使用できます:
<code class="language-csharp">var now = CSharpScript.EvaluateAsync<string>("System.DateTime.Now.ToString()").Result;</code>
Roslyn スクリプト API は、パラメーターの受け渡し、名前空間の管理、より複雑なシナリオの処理もサポートしています。 詳細については、公式ドキュメントを参照してください: https://www.php.cn/link/150353f887435acbf6ef0a57e4a3dbca
以上がRoslynを使用して実行時にC#式を動的に評価するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。