问题描述
是否有与C#myVariable.GetType().Name
等效的进度?
使用接口或基本类型变量,我们能否找回实例化的实类型名称?
ShowRealType(NEW myUserDefinedError()).
METHOD PUBLIC VOID ShowRealType(viError AS Progress.Lang.ERROR):
MESSAGE /***** NEED CODE TO FIND THE REAL TYPE OF viError here ******/ VIEW-AS ALERT-Box.
END METHOD.
我尝试过viError:GetClass():ToString()
,但是它给出的是Progress.Lang.Class_1025
而不是myUserDefinedError
。
解决方法
您可以做类似的事情
METHOD PUBLIC VOID ShowRealType(viError AS Progress.Lang.ERROR):
// validate that it's really an object
if valid-object(viError) then
MESSAGE viError:GetClass():TypeName
VIEW-AS ALERT-BOX.
END METHOD.