Exécution dynamique du fichier texte C # fragment de code
Question:
Le fragment de code C # peut-il être stocké dans le fichier texte et l'exécuter dynamiquement? Afin d'obtenir les meilleures performances, dois-je d'abord compiler le code?
Réponse:
Oui, vous pouvez compiler et exécuter dynamiquement le fragment de code C #. Pour le langage .NET statique comme C #, la meilleure façon est d'utiliser le modèle de codé (modèle d'objet de document de code). La codéation peut construire et exécuter dynamiquement des fragments de code.
CSharpCodeProvider fournit une interface pour compiler le code C #. Exemples comme suit:
à partir du code de compilation de texte:
Pour compiler le code à partir du texte, veuillez utiliser CompileSemblyFromsource:
using System.CodeDom.Compiler; using Microsoft.CSharp; var csc = new CSharpCodeProvider(new Dictionary<string, string>() { { "CompilerVersion", "v3.5" } });
<行> Exécutez le code compilé (utilisez la réflexion):
Une fois la compilation terminée, utilisez la réflexion pour charger et exécuter dynamiquement l'assemblage:
var parameters = new CompilerParameters(new[] { "mscorlib.dll", "System.Core.dll" }, "foo.exe", true); parameters.GenerateExecutable = true; CompilerResults results = csc.CompileAssemblyFromSource(parameters, codeText);
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!