Tôi đang làm ví dụ có thể được tìm thấy here. Vì vậy, tôi đang cố gắng để chạy IronPython trong một C# kịch bản:Biên dịch động C# và lỗi "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");
…
Và từ đây tôi có lỗi này: "Dynamic Operation không thể là biên soạn không có tham chiếu assembly "Microsoft.CSharp.dll". " Và tôi thực sự không hiểu điều đó là gì, tôi đã quên thêm gì?
Trong tài liệu tham khảo của tôi, tôi có:
Thx giúp đỡ của bạn.
Ps: Tôi đang sử dụng MonoDevelop.
Đảm bảo bạn gắn cờ câu trả lời của riêng mình làm giải pháp để khách truy cập trong tương lai có thể thấy bạn đã giải quyết được vấn đề! Ngoài ra tôi rất vui vì bạn đã tìm thấy và chọn sử dụng ví dụ của tôi :) – Urda
Đây cũng là vấn đề của tôi. Tôi đã thêm tài liệu tham khảo của tôi bằng cách sử dụng tab ".NET" trong Visual Studio C# 2010 Express. Tôi nghĩ rằng các tập tin gốc xuất hiện có thể chỉ từ thư mục 'Net35'. Hãy nhận biết về 'Đường dẫn' trong hộp thoại Thêm Tham khảo. Khi tôi thêm chúng từ 'IronPython 2.7 \ Platforms \ Net40', bản dựng đã thành công, và cả hai bộ hội đồng bây giờ xuất hiện trên tab .Net trong Add References. (Điều này có thể là trường hợp trước đó, tôi chỉ không nhận thấy). – cod3monk3y