221 votes

Intégration de moteur JavaScript dans .NET

je me demandais si quelqu'un a déjà essayé d'incorporation et de fait l'intégration de toute js moteur dans le .net de l'environnement. J'ai pu trouver et utiliser effectivement (après BEAUCOUP de douleur et de l'effort, car il est à peu désuet et n'est pas tout à fait fini) spidermonkey-dotnet projet. Toute personne ayant de l'expérience dans ce domaine? Les moteurs comme Interpréteur, V8..

Non pas que je ne suis pas satisfait avec Mozilla Spidermonkey (de l'utiliser pour Rails-comme miniframework pour les composants personnalisés à l'intérieur de la base ASP.NET de l'application), mais j'avais encore de l'amour pour explorer un peu plus avec les options. La ligne de commande, les solutions ne sont pas ce que j'en avais besoin, je ne peux pas compter sur quoi que ce soit d'autre que de la CLR, j'ai besoin d'appeler des méthodes de/JavaScript/C# objets.

// c# class
public class A
{
    public string Hello(string msg)
    {
        return msg + " whatewer";
    }
}

// js snippet
var a = new A();
console.log(a.Hello('Call me')); // i have a console.log implemented, don't worry, it's not a client-side code :)

Juste pour préciser - je ne suis pas tenter de programme de l'application elle-même en javascript côté serveur. Il est utilisé uniquement pour l'écriture de l'utilisateur personnalisés subapplications (peut être vu comme une sorte de DSL). Il est beaucoup plus facile (et plus sûr) pour permettre à des gens normaux programmation en js que C#.

99voto

Michel Boissé Points 181

Essayez Javascript .NET:

http://javascriptdotnet.codeplex.com/

Il implémente Google V8. Vous pouvez compiler et exécuter Javascript directement à partir du code .NET et fournir des objets CLI à utiliser par le code Javascript. Et V8 est probablement le meilleur moteur jamais créé en termes de performances, il génère du code natif à partir de Javascript.

91voto

L'interpréteur JavaScript open source Jint ( http://jint.codeplex.com ) fait exactement ce que vous recherchez.

Modifier:
Le projet a été entièrement réécrit et est maintenant hébergé sur Github à l' adresse https://github.com/sebastienros/jint

59voto

JB. Points 331

À compter d'aujourd'hui, (06/2013) vous pourriez également être intéressé par Microsoft ClearScript qui est hébergé sur codeplex et publié sous le Ms-Pl de la licence.

Je ne suis pas un fanboy Microsoft, mais je dois avouer que le V8 de soutien a environ les mêmes fonctionnalités que Javascript.Net et plus important, le projet est toujours maintenu. Pour autant que je suis concerné, le soutien pour les délégués ont également des fonctions de mieux que Spidermonkey-dotnet.

ps: Elle a également en charge le JScript et VBScript, mais nous n'étions pas intéressés par ce vieux trucs.

ps: Il est uniquement compatible avec .NET 4.0 et 4.5

40voto

bbqchickenrobot Points 2273

Tout le monde regarde Jurassic aussi:

http://jurassic.codeplex.com/

7voto

Jason Bunting Points 27534

Je suppose que je suis toujours pas clair sur ce que vous êtes en train de faire, mais JScript.NET peut être utile dans la recherche, bien que Géré JScript semble comme il pourrait être plus approprié pour vos besoins (c'est plus comme le JavaScript que JScript.NET).

Personnellement, j'ai pensé qu'il serait cool d'intégrer V8 en quelque sorte, mais je n'ai pas passé le téléchargement du code source; souhaite que j'aie eu le temps de réellement faire quelque chose avec elle.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X