How to use Microsoft.Scripting.Hosting?

2019-01-23 17:25发布

To embed some IronPython Code into C# I want to use the ScriptEngine

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

I found the reference for IronPython, but where is the necessary reference for Scripting.Hosting? I can't find it within VisualStudio 2008, targeting .Net 3.5.

4条回答
爷的心禁止访问
2楼-- · 2019-01-23 18:02

Microsoft.Scripting is part of the Dynamic Language Runtime. The Dynamic Language Runtime is part of .NET 4, IronPython and IronRuby and is also available standalone.

John Lam, the lead developer of IronRuby, created a little library called repl-lib, which implements a simple editor/REPL hybrid for IronRuby and IronPython which you can just drop into your application. In a blog post, John Lam demonstrates how he used repl-lib to add scripting to the Witty .NET Twitter client in 8(!) lines of code (plus 90 or so lines of XAML for the REPL UI and the REPL button).

That blog post is based on a presentation at TechEd 2009, which I unfortunately don't have access to, but if you do, you should check it out.

Be sure to also check out the forks of repl-lib, especially Jim Deville's.

查看更多
我命由我不由天
3楼-- · 2019-01-23 18:11

I suggest that you use NuGet instead of managing the binaries yourself.

This worked for me. http://nuget.org/packages/DynamicLanguageRuntime.Net40.Unofficial

查看更多
萌系小妹纸
4楼-- · 2019-01-23 18:12

The DLR is actually broken into 2 parts: the "inner layer" which is included in .NET 4.0 and is part of System.Core.dll (and on downlevel platforms is available as Microsoft.Scripting.Core.dll) the "outer layer" which is available on CodePlex and ships w/ IronPython and IronRuby and is in Microsoft.Scripting.dll and Microsoft.Dynamic.dll. This part does not ship w/ .NET 4.0.

查看更多
The star\"
5楼-- · 2019-01-23 18:18
登录 后发表回答