J'écris un petit outil de visualisation dans wpf, l'idée est que les utilisateurs moyens peuvent créer des visualisations intéressantes sans programmer d'assistants.dynamic keyword, C# compilation service - comment faire pour exécuter du code qui n'est pas encore disponible au moment de la compilation?
J'ai une classe de contrôleur qui a des méthodes comme StartPath (double x, double y) et LineTo (x, y) CurveTo (...), etc.
L'idée est qu'un utilisateur peut saisir ces commandes dans une zone de texte et le faire dessiner le résultat sur un canevas.
StartPath(0,0);
LineTo(30,50);
LineTo(50,40);
EndPath();
Une idée que j'avais était d'utiliser un modèle de .cs qui a toutes les méthodes mises en œuvre, et dispose d'une commande supplémentaire Run() avec un jeton de remplacement à l'intérieur. Je charge le modèle sous forme de chaîne, insère les commandes utilisateur dans la méthode Run(), utilise le nouveau service de compilation .net 4.0 pour créer un assembly à la volée, le charge et invoque sa méthode Run() et accède au chemin exposé pour dessiner sur une toile.
Un autre serait effectivement juste d'analyser la zone de texte, l'erreur vérifier et appeler les méthodes appropriées.
Existe-t-il d'autres méthodes, en particulier avec le nouveau mot-clé dynamique?
Je vais y jeter un coup d'oeil, merci beaucoup. Merci de m'avoir éclairci, je ne suis pas au courant des dernières spécifications C#. – kitsune
Fonctionne très bien: http://dl.getdropbox.com/u/133877/test.jpg Merci encore :) – kitsune