Types Ironpython获取dot net类的属性类型
我想编写以下函数,它接受一个随机的Dot Net类,已知该类有一个名为Types Ironpython获取dot net类的属性类型,types,ironpython,Types,Ironpython,我想编写以下函数,它接受一个随机的Dot Net类,已知该类有一个名为Amount的属性,并返回该属性的Dot Net类型的一些指示Amount通常是可为空的类型,因此实例在创建时将以null(PythonNone)结束 def读入类型(测试类): ''给定的Dot Net类test_类,返回可为null的Amount属性的类型。'' 实例=测试类() 答案=类型(实例.金额)#始终为非类型 回覆 获取实例.Amount的类型指示的正确方法是什么 除了上面的代码,我还试着内省test\u cl
Amount
的属性,并返回该属性的Dot Net类型的一些指示Amount
通常是可为空的类型,因此实例
在创建时将以null
(PythonNone
)结束
def读入类型(测试类):
''给定的Dot Net类test_类,返回可为null的Amount属性的类型。''
实例=测试类()
答案=类型(实例.金额)#始终为非类型
回覆
获取实例.Amount的类型指示的正确方法是什么
除了上面的代码,我还试着内省test\u class.Amount
和instance.Amount
。我能够获得getset\u描述符
,但我也无法确定如何从该对象中提取类型指示符
这适用于某些ETL代码,其目标之一是将输入中遇到的错误数据类型通知调用程序。我的代码想知道遇到了什么,以及预期的类型。您最好使用普通的.NET系统。反射API:
instance = test_class()
answer = instance.GetType().GetProperty("Amount").PropertyType
起点是,;所有的.NET类型元数据都可以从那里获得。您打算如何处理类型信息?您希望如何处理该信息?您对.NET类型或等效的基本python类型感兴趣吗?我的目标有两个——为合理数量的常见类型执行合理的类型转换,并向调用程序提供有关无法分配的属性的信息(包括类型)。我必须为可为空的类型做一些额外的工作,但这一切都很顺利。