有一个名为“Entities”的IronPython包。该软件包包含一个定义“客户”类和“地址”类的“Entity.py”文件。命名空间和程序集名称如何为IronPython类型工作?
如果我运行这个程序:
customer = Customer()
print customer.GetType().AssemblyQualifiedName
address = Address()
print address.GetType().AssemblyQualifiedName
我得到这样的输出:
IronPython.NewTypes.System.Object_1$1, Snippets.scripting, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
IronPython.NewTypes.System.Object_1$1, Snippets.scripting, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
是如何运作的?为什么两种类型都有相同的名称(Object_1$1
)?
我必须使用需要组件限定名称才能创建该类型实例的API。我希望能够以这种方式使用它:
customer = aFactory.Create("Entities.Customer, Entities");
我该怎么做?有什么方法可以指定名称空间和程序集名称?
感谢
@Dino:谢谢你的回答。我读了你提供的链接。它说:“IronPython网站上提供的ClrType示例显示了如何在__clrtype__钩子之上构建。”我无法找到该示例,Google也无法找到。你能寄给我那个样本的链接吗? – Sylvain 2009-12-27 21:44:27
示例可在此处找到:http://ironpython.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=12482#DownloadId=96609 – 2009-12-28 20:01:30
@迪诺:谢谢,我会检查一下。 – Sylvain 2009-12-29 15:31:02