2010-03-22 3 views
0

Je souhaite utiliser la fonctionnalité Javascript dans C#. Est-il possible d'utiliser Javascript dans C#? Si oui comment?Pouvons-nous utiliser javascript en C#?

Quelqu'un peut-il me fournir un guide ou un exemple de code?

Thanx

+6

Pourriez-vous préciser ce que vous entendez par "utiliser la fonctionnalité javascript en C#"? (c'est-à-dire que je dois ajouter des scripts à mon application) – jrista

+1

Voulez-vous dire côté client javascript dans une page .aspx, ou exécuter javascript sur le serveur/bureau à partir de C#? – ScottS

+2

Peut-être que vous voulez dire "Comment puis-je utiliser Javascript en tant que langage .Net?"? – Asaph

Répondre

0

http://odetocode.com/code/80.aspx montre une JScript dynamique simple eval qui peut être appelé à partir de C#, que ce soit ce que vous recherchez Je ne suis pas sûr à 100%.

+0

juste une note: jscript et javascript sont deux bêtes différentes. – Alan

+0

Non, ils ne sont que des variantes sur ECMAScript et normalement quand les gens demandent à exécuter javascript dans une technologie Windows, ils font vraiment référence à JScript.Et d'après mon expérience, les gens ont tendance à confondre javascript avec ce que le navigateur web implémente réellement, car je peux dire que la plupart des différences entre JScript et Javascript sont liées à la portée et à l'interaction DOM, qui concerne le navigateur web. la langue. – tyranid

+0

Alors que JScript et Javascript sont très proches, JScript.NET est en effet une bête différente. Alan fait vraisemblablement référence au fait que l'article parle de JScript.NET et non de JScript. – Svend

0

Vous pouvez envoyer du JavaScript à la page dans un certain nombre de méthodes.

1) Vous pouvez placer un contrôle littéral sur votre page et définir la valeur sur un script. 2) Utilisez le scriptmanager ASP.NET à registerstartupscript.

1

Pour exécuter une fonction javascript sur l'utilisation de chargement de la page,

Page.ClientScript.RegisterStartupScript(Page.GetType(), "jsstring", "urfunction()", true);

Pour exécuter sur un bouton clic utilisation de l'événement,

ScriptManager.RegisterClientScriptBlock(urbuttonId, typeof(button), "jsstring", "urfuction()", true);

0

Ceci est la plupart du temps inutile, mais la machine virtuelle Java (Java Machine virtuelle) a rhino un moteur JavaScript. Ce est que la plupart du temps inutile que IKVM est une implémentation Java pour .NET y compris

* A Java Virtual Machine implemented in .NET 
* A .NET implementation of the Java class libraries 
* Tools that enable Java and .NET interoperability 

vous permet d'utiliser JavaScript de manière très rond-point comme on le voit ici: http://www.codeproject.com/KB/cs/EmbeddingJSCS.aspx

aussi Jint regards intéressant.

0

Non, vous ne pouvez pas appeler une fonction écrite en Javascript en C#.

Vous pouvez, bien sûr, écrire C# dans une page ASPX qui peut invoquer une fonction Javascript sur la page client ce qui n'est probablement pas ce que vous essayez de faire.

Vous pouvez essayer d'utiliser JSC (compilateur jscript) pour compiler votre code javascript dans une bibliothèque qui peut ensuite être référencée par .NET. Cependant, la syntaxe jscript et javascript diffère, et vous serez plus que probablement obligé de faire des changements.

J'ai rencontré ce problème il y a plusieurs mois. Ma solution était de porter mon code javascript en C# et de l'utiliser. L'utilisation des outils de débogage javascript intégrés à IE permet de le faire facilement.