IronPython and the Spark View Engine
It now supports IronPython:
About Iron Python
IronPython is a dynamic language runtime (DLR) based implementation of Python. Spark scripting is based on assemblies in the 2.0 Release Candidate 1 binary zip. Other good resources are the Python documentation and the Python site itself.
The support for the DLR is very Asp.Net MVC centric. If there's an interest in expanded Castle MonoRail support, please speak up in the discussion group.
Creating a new project
A standard Asp.Net MVC web application is always a great starting place. First, add references to the following assemblies:
- Spark.dll
- Spark.Python.dll
- Spark.Web.Mvc.dll
- Spark.Web.Mvc.Python.dll
And the following from the IronPython release which are available in the Spark bin\dependencies folder. If you have problems with the these files from Codeplex try the ones in from the Spark distribution. You have the "works on my machine" guarantee.
- Microsoft.Scripting.dll
- Microsoft.Scripting.Core.dll
- Microsoft.Scripting.ExtensionAttribute.dll
- IronPython.dll
- IronPython.Modules.dll
Yeah, I know. It's a lot of assemblies. You're going to love the next part though, adding the Spark view engine to an Asp.Net MVC web application has been simplified.
Add the following to your Global Application_Start method:
using Spark.Web.Mvc.Scripting;
...
protected void Application_Start(object sender, EventArgs e)
{
SparkPythonEngineStarter.RegisterViewEngine();
}
This will create a view engine and add it to the engines collection.
The Spark engine starter also has several utility methods for more advanced initialization. You can, for example, provide a settings object from code. You can also use the ISparkServicesContainer to provide specific implementations of different services used by the Spark engine.
Comments
Post a Comment