2010-10-25 5 views
10

Может ли один отметить, что и где я могу получить некоторые учебники о IronJS и как вызвать метод, написанный на IronJS из C# 4.0Информация о IronJS

Благодаря

C# 4.0, IronJS

+0

Я был бы готов поспорить, что IronJS слишком новен, чтобы иметь учебники. – Gabe

ответ

4

Если у вас есть Context, вы можете позвонить Context.CompileSource() и передать его результаты Context.InvokeCompiled() или просто позвонить Context.Execute() и передать ему исходный код. Примерно так:

IronJS.Hosting.Context ijsCtx; 
ijsCtx = IronJS.Hosting.Context.Create(); 
ijsCtx.Execute("(function(){return 42;})()"); 
+0

Сэр, еще один вопрос .. В последний день я пытался получить класс IronJS из доступных DLL. Но не в состоянии узнать. Не могли бы вы дать мне понять, в какой сборке это? –

+0

IronJS - это пространство имен, а не класс. – Gabe

+0

Да, это опечатка .. Я имею в виду, в какой DLL я получу этот IronJS.Hosting.Context? –

1

Возможно, вы можете посмотреть Embedding IronJs. Но он выглядит устаревшим, а также ответом @Gabe.

В настоящее время он должен называться так:

var o = new IronJS.Hosting.Csharp.Context 
o.Execute('var a = 10; a'); 
9

Существует в настоящее время некоторые хорошая информация от автора на вики проекта GitHub:

https://github.com/fholm/IronJS/wiki

Существует «Первые шаги» сообщение в блоге:

http://blog.dotsmart.net/2011/04/20/first-steps-with-ironjs-0-2/

И я написал несколько сообщений в блоге на IronJS, в том числе связанную с stej. Связывание post stej действительно актуально, но оно охватывает только некоторые основные аспекты внедрения. IronJS подвергся радикальной перезаписи с первых постов, поэтому я разместил уведомления на этих сообщениях, направленных на новые обновления.

Этот пост специально охватывает вопросы автора первоначального о том, как вызвать JS код из C#:

http://newcome.wordpress.com/2011/03/13/embedding-ironjs-part-ii/

Вот краткий обзор:

IronJS.Hosting.Context ctx = IronJS.Hosting.Context.Create(); 
ctx.Execute("hello = function() { return 'hello from IronJS' }"); 
IronJS.Box obj = ctx.GetGlobal("hello"); 
Func<IronJS.Function,IronJS.Object,IronJS.Box> fun = 
    obj.Func.Compiler.compileAs<Func<IronJS.Function,IronJS.Object,IronJS.Box>>(obj.Func); 

IronJS.Box res = fun.Invoke(obj.Func, obj.Func.Env.Globals); 
Console.WriteLine(res.String); 
+0

Я обновил вики для тегов, чтобы включить некоторые ссылки и содержимое из файла readme. –

+0

С последним IronJS этот фрагмент кода обесценивается, поскольку не существует «IronJS.Box», есть «IronJS.BoxedValue», но у него нет метода «Func.Compile». Документы для IronJS разочаровывают. – CmdrTallen

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

  • Нет связанных вопросов^_^