Maison >développement back-end >C++ >Comment puis-je réaliser l'exécution de code dynamique en C # comme EVAL () de JavaScript?
Le code dynamique du C # exécute
Similaire à la fonction
dans JavaScript, C # peut utiliser l'API de script Roslyn pour implémenter le code dynamique. Cette API vous permet de compiler et d'exécuter dynamiquement le code C # au moment de l'exécution.
eval()
Exemple:
Supposons que vous ayez une variable entière et plusieurs attributs tels que "Property1", "Property2", "Property3". Vous souhaitez effectuer des opérations sur l'attribut "Property
i" en fonction de la valeur i
. i
Cet exemple charge dynamiquement l'assemblage et accédez à l'attribut en fonction de la valeur .
<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>Autres fonctions:
i
Vous pouvez également citer le code précédemment compilé:
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!