私のC#コードでは、リスト内のPythonコードに渡すデータを格納するクラスがあります。しかし、私はPythonコード内でそのクラスのプロパティにアクセスしようとすると、私はMissingMemberException
を取得します。ここで私が何を意味するか示すために、いくつかのサンプルコード:IronPythonのC#クラスメンバーへのアクセス
のC#:
class Event
{
public int EventId { get; set; }
public string EventName { get; set; }
}
//other processing here...
//this just fills the list with event objects
List<Event> eventList = GetEvents();
//this sets a variable in the ScriptScope
PythonEngine.SetVariable("events", eventList);
PythonEngine.Execute("eventParser.py");
eventParser.py:
for e in events:
print e.EventId, "/", e.EventName
MissingMemberException
が、私は "イベントのEventIdという名前のメンバーが含まれていません"
を語ります他の型をPythonに渡してテストしました。List<int>
とList<string>
のようなプリミティブ型のリストを含み、正常に動作します。
私はこれらのクラスのプロパティEventId
とEventName
にPythonスクリプトでどのようにアクセスしますか?
ありがとうジョン、それは仕事をしました。 – peacemaker