我已经开始在Delphi 2010中编写Web服务并进行单元测试以确保它们按计划运行.我传递的代码的单元测试,但是当作为服务调用时(即通过SoapUI),一个Web服务方法没有返回值.经过几个小时的搜索代码后,我发现这是因为我的返回对象上的属性不在界面的已发布部分中; 他们在公共部门.
我的单元测试是否有办法检查对象的变量可见性,以便将来可以避免这个问题?我试图用RTTI找到一种方法但却找不到任何东西.
您可以通过尝试访问该属性的RTTI来确定是否已声明属性已发布.公共财产没有RTTI,已发布的财产.
像这样的东西:
if (GetPropInfo(myobject, "PropertyName") != null) then
// it's published...
Run Code Online (Sandbox Code Playgroud)
有关RTTI的更多信息,请参阅Brian Long的文章:http://www.blong.com/Conferences/BorConUK98/DelphiRTTI/CB140.htm
| 归档时间: |
|
| 查看次数: |
315 次 |
| 最近记录: |