У меня есть набор основных, сложных структур данных/классов JavaScript, которые я хотел бы использовать как в браузере в качестве JavaScript, так и на рабочем столе с .NET 3.5 , Возможно ли скомпилировать веб-интерфейс JavaScript в сборках, доступ к которым может получить мой код на C#?Совместное использование кода JavaScript между рабочим столом .NET и браузером
- Управляемый JScript - существует ли компилятор для этого, который будет создавать что-то, что может работать на рабочем столе CLR? Я видел только выпущенные примеры для среды выполнения Silverlight. Не похоже, что он официально доступен на рабочем столе, но я готов попробовать что-то менее благословенное, например, я могу скомпилировать инструменты Silverlight, а затем запустить на рабочем столе CLR?
- JScript .NET - Похоже, что у него достаточно специальных языковых расширений, где одинаковый код, выполняемый в браузере, будет очень тяжелым, но, может быть, есть способ ...?
Если ни один из этих работ, я думаю, мои варианты являются:
- Есть C# версию и версию JavaScript, который я должен держать в синхронизации (гадость).
- Напишите препроцессор, который выполняется во время компиляции, чтобы превратить мой JavaScript в JScript .NET или что-то, что я могу скомпилировать в сборках .NET.
- Сценарий #: Похоже, это превращает код C# в код JavaScript. Не удивительно, так как я предпочел бы иметь возможность напрямую настраивать код JavaScript, но он может работать.
У кого-либо есть успех с любым из этих вариантов?
Проблема, с которой я столкнулась (с использованием JScript.NET), заключается в том, что, хотя можно вызвать функции и классы, определенные в JScript.NET, с других языков, похоже, нет способа получить доступ переменные и код запуска, определенный «на верхнем уровне». Кроме того, если функции или методы пытаются получить доступ к вещам, инициализированным в глобальном масштабе, эти значения не инициализируются. Если у вас есть другой опыт, я бы хотел услышать об этом! – 2009-06-01 22:55:28