Heim >Backend-Entwicklung >C++ >Wie kann ich eine dynamische Code -Bewertung in C# wie JavaScripts `eval ()` erreichen?
In diesem Artikel wird erläutert, wie der Code in C#dynamisch ausgeführt wird, ähnlich der
-Funktion in JavaScript.
eval()
Problembeschreibung
Angenommen, Sie haben eine Ganzzahlvariable und mehrere Attribute, die als "Property1", "Property2", "Property3" und andere Attribute bezeichnet werden. Nach dem Wert möchten Sie Operationen für das entsprechende Eigenschaft "Eigenschaft
i" ausführen. Verwenden Sie i
in JavaScript, um diese Aufgabe einfach zu erledigen, aber wie kann man sie in C#erreichen? i
eval()
Beispielcode
Um einfache Ausdrücke zu bewerten, verwenden Sie
Methode:Für komplizierteren Code können Sie
Methode verwenden:
EvaluateAsync()
<code class="language-csharp">// 添加NuGet包 'Microsoft.CodeAnalysis.Scripting' using Microsoft.CodeAnalysis.CSharp.Scripting; await CSharpScript.EvaluateAsync("System.Math.Pow(2, 4)"); // 返回16</code>weiter aufrufen, um den Code weiter auszuführen:
RunAsync()
<code class="language-csharp">var script = await CSharpScript.RunAsync(@" class MyClass { public void Print() => System.Console.WriteLine(1); }");</code>
Das obige ist der detaillierte Inhalt vonWie kann ich eine dynamische Code -Bewertung in C# wie JavaScripts `eval ()` erreichen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!