2009-11-05 23 views
9

incrustar algunas Código IronPython en C# Quiero usar el ScriptEngineCómo usar Microsoft.Scripting.Hosting?

using IronPython.Hosting; 
using Microsoft.Scripting.Hosting; 

encontré la referencia para IronPython, pero ¿dónde está la referencia necesaria para Scripting.Hosting? No puedo encontrarlo en VisualStudio 2008, apuntando a .Net 3.5.

Respuesta

4

Microsoft.Scripting es parte de la Dynamic Language Runtime. Dynamic Language Runtime es parte de .NET 4, IronPython y IronRuby y también está disponible de forma independiente.

John Lam, el desarrollador principal de IronRuby, creó una pequeña biblioteca llamada repl-lib, que implementa un editor simple/REPL híbrido para IronRuby y IronPython que puede simplemente colocar en su aplicación. In a blog post, John Lam demuestra cómo utilizó repl-lib para agregar scripts al Witty .NET Twitter client en 8(!) lines of code (más 90 líneas de XAML para la IU de REPL y el botón REPL).

Esa publicación de blog se basa en a presentation at TechEd 2009, que desafortunadamente no tengo acceso, pero si lo hace, debe verificarlo.

Asegúrese de consultar también forks of repl-lib, especialmente Jim Deville's.

+0

Eso es fascinante. Gracias por resumir esto. – wishi

12

El DLR en realidad está dividido en 2 partes: la "capa interna" que se incluye en .NET 4.0 y es parte de System.Core.dll (y en las plataformas de nivel inferior está disponible como Microsoft.Scripting.Core.dll) la "capa externa" que está disponible en CodePlex y se envía con IronPython e IronRuby y se encuentra en Microsoft.Scripting.dll y Microsoft.Dynamic.dll. Esta parte no se envía con .NET 4.0.