2012-06-03 13 views
5

Czy jest jakiś sposób udostępnienia klasy skryptom IronPython, aby móc tworzyć obiekty wewnątrz kodu?Tworzenie instancji niestandardowych klas C# z IronPython

Na przykład, jeśli mam klasy, który chcę mieć możliwość wystąpienia ze skryptu o nazwie MojaKlasa zdefiniowane w kodzie C# tak:

public class MyClass 
{ 
    string text; 

    public MyClass(string text) 
    { 
     this.text = text; 
    } 

    public void Write() 
    { 
     Console.WriteLine(text); 
    } 
} 

Jak mogę to zrobić w skrypt Pythona?

obj = MyClass("Hello, World!") 
obj.Write() 

Dzięki!

Odpowiedz

7

Zakładając MojaKlasa jest w MyAssembly.dll:

import clr 
clr.AddReference('MyAssembly.dll') 
import MyClass 
obj = MyClass("Hello, World!") 
obj.Write() 
+0

Dzięki! Będę musiał zrobić trochę magii, aby to działało, ale będzie :) – jmegaffin

Powiązane problemy