Tôi có một lớp # C trông một chút như:Gán một phương pháp IronPython đến một C# đại biểu
public class MyClass
{
private Func<IDataCource, object> processMethod = (ds) =>
{
//default method for the class
}
public Func<IDataCource, object> ProcessMethod
{
get{ return processMethod; }
set{ processMethod = value; }
}
/* Other details elided */
}
Và tôi có một kịch bản IronPython đó được chạy trong ứng dụng trông giống như
from MyApp import myObj #instance of MyClass
def OtherMethod(ds):
if ds.Data.Length > 0 :
quot = sum(ds.Data.Real)/sum(ds.Data.Imag)
return quot
return 0.0
myObj.ProcessMethod = OtherMethod
Nhưng khi ProcessMethod
được gọi (bên ngoài IronPython), sau khi gán này, phương thức mặc định được chạy.
Tôi biết tập lệnh được chạy vì các phần khác của tập lệnh hoạt động.
Tôi nên làm như thế nào?
Trả lời cho một bài cũ, nhưng sẽ không bạn cũng cần phải nhập tên IDataSource từ đâu đó để làm việc này? –