Estoy haciendo el ejemplo que se puede encontrar here. Así que estoy tratando de correr IronPython en un C# script:C# compilación dinámica y error "Microsoft.CSharp.dll"
Python:
def hello(name):
print "Hello " + name + "! Welcome to IronPython!"
return
def add(x, y):
print "%i + %i = %i" % (x, y, (x + y))
return
def multiply(x, y):
print "%i * %i = %i" % (x, y, (x * y))
return
C#:
using IronPython.Hosting;
using IronPython.Runtime;
using Microsoft.Scripting.Hosting;
using System;
namespace IntroIronPython
{
class IronPythonMain
{
static void Main(string[] args)
{
// Create a new ScriptRuntime for IronPython
Console.WriteLine("Loading IronPython Runtime...");
ScriptRuntime python = Python.CreateRuntime();
try
{
// Attempt to load the python file
Console.WriteLine("Loading Python File...");
// Create a Dynamic Type for our Python File
dynamic pyfile = python.UseFile("PythonFunctions.py");
Console.WriteLine("Python File Loaded!");
Console.WriteLine("Running Python Commands...\n");
// Call the hello(name) function
pyfile.hello("Urda");
…
Y a partir de aquí tengo este error: "Operación dinámica puede no ser compilado sin referencia de ensamblado "Microsoft.CSharp.dll". Y realmente no entiendo de qué se trata, ¿qué se me olvidó agregar?
En mis referencias que tengo:
Thx por su ayuda.
Ps: Estoy en MonoDevelop.
¡Asegúrese de marcar su propia respuesta como la solución para que los futuros visitantes puedan ver que ha resuelto el problema! También me complace que haya encontrado y haya elegido usar mi ejemplo :) – Urda
Este también fue mi problema. Agregué mis referencias usando la pestaña ".NET" en Visual Studio C# 2010 Express. Creo que los archivos originales que aparecieron solo pueden haber sido del directorio 'Net35'. Tenga en cuenta la 'Ruta' en el cuadro de diálogo Agregar referencias. Cuando los agregué desde 'IronPython 2.7 \ Platforms \ Net40' la compilación tuvo éxito, y ambos conjuntos de ensamblajes ahora aparecen en la pestaña .Net en Agregar Referencias. (Esto puede haber sido el caso antes también, simplemente no me di cuenta). – cod3monk3y