2010-03-22 3 views
0

Я хочу использовать функциональность Javascript в C#. Можно ли использовать Javascript в C#? Если да, то как?Можем ли мы использовать javascript в C#?

Может ли кто-нибудь предоставить мне руководство или образец кода?

Thanx

+6

Не могли бы вы рассказать о том, что вы подразумеваете под «использование функциональности javascript в C#»? (т. е. мне нужно добавить скрипты в мое приложение) – jrista

+1

Вы имеете в виду нас на стороне javascript на странице .aspx или выполняете javascript на сервере/рабочем столе с C#? – ScottS

+2

Возможно, вы имеете в виду «Как я могу использовать Javascript как .Net-язык?»? – Asaph

ответ

0

http://odetocode.com/code/80.aspx показывает простую динамическую JScript Eval, который может быть вызван из C#, является ли то, что вы ищете, я не уверен на 100%.

+0

только примечание: jscript и javascript - два разных зверя. – Alan

+0

Нет, они не являются просто вариантами на ECMAScript, и обычно, когда люди просят запустить javascript в технологии Windows, они действительно ссылаются на JScript.И по моему опыту люди склонны смешивать javascript с тем, что когда-либо действительно реализует веб-браузер, поскольку из того, что я могу сказать, большинство различий между JScript и Javascript связаны с определением области охвата и как происходит взаимодействие с DOM, что касается всего веб-браузера, а не язык. – tyranid

+0

Хотя JScript и Javascript очень тесно связаны друг с другом, JScript.NET - действительно другой зверь. Алан, по-видимому, ссылается на то, что в статье речь идет о JScript.NET, а не JScript. – Svend

0

Вы можете отправить JavaScript на страницу несколькими способами.

1) Вы можете установить литеральный контроль на своей странице и установить значение для скрипта. 2) Используйте сценарист ASP.NET для registerstartupscript.

1

Для выполнения яваскрипта функции на использовании загрузки страницы,

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

Для выполнения на использовании события нажатия кнопки,

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

0

В основном это бесполезно, но JVM (Java Virtual Machine) имеет rhino механизм JavaScript. Это только в основном бесполезно, как IKVM является реализация Java для .net включая

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

позволяет использовать JavaScript в очень окольным способом, как видно здесь: http://www.codeproject.com/KB/cs/EmbeddingJSCS.aspx

Jint также выглядит интересно.

0

Нет, вы не можете вызвать функцию, написанную на Javascript в C#.

Вы можете, конечно, написать C# на странице ASPX, которая может вызывать функцию Javascript на странице клиента, которая, вероятно, не является тем, что вы пытаетесь сделать.

Вы можете попытаться использовать АО (компилятор jscript) для компиляции вашего javascript-кода в библиотеку, на которую затем можно ссылаться .NET. Однако синтаксис jscript и javascript отличается, и вы, скорее всего, застряли, чтобы внести изменения.

Я столкнулся с этой проблемой несколько месяцев назад. Мое решение состояло в том, чтобы поместить мой код javascript на C# и использовать его.

Использование встроенных инструментов отладки JavaScript в IE делает его довольно простым.

Смежные вопросы