Trong mã C# của tôi, tôi có một lớp lưu trữ một số dữ liệu tôi muốn chuyển xuống mã python của tôi trong Danh sách. Tuy nhiên, khi tôi cố gắng truy cập các thuộc tính của lớp đó bên trong mã python của tôi, tôi nhận được MissingMemberException
. Dưới đây một số mã ví dụ cho thấy những gì tôi có nghĩa là:Truy cập các thành viên lớp C# trong IronPython
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
Các MissingMemberException
nói "tổ chức sự kiện không chứa thành viên mang tên EventId"
tôi đã thử nghiệm truyền các loại khác cho trăn, bao gồm danh sách các kiểu nguyên thủy như List<int>
và List<string>
và chúng hoạt động tốt.
Vậy làm cách nào để truy cập các thuộc tính lớp học này, EventId
và EventName
trong tập lệnh python của tôi?
Cảm ơn Jon, đã thực hiện công việc. – peacemaker