我是IronPython的新手,但多年来一直使用Python。我继承了一些C#应用程序,并希望通过Python访问它们的一些类。鉴于以下C#:
namespace Updater {
static class Program {
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main() {
//Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault( false );
Application.Run( new Form1() );
}
}
}
当我在Python中导入时:
>>> clr.AddReferenceToFile('Updater.exe')
>>> import Updater
>>> dir(Updater)
['Form1']
为什么程序不可见?
答案 0 :(得分:2)
C#中类的默认可见性是internal
,因此IronPython不会显示Program
类。有关详细信息,请参阅https://stackoverflow.com/a/3763638/129592。
您可以通过将类声明更改为
来解决此问题public static class Program {
// etc.
}