马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?站点注册
×
PB11.5 WebService中使用的PBSoapClient115.PBD和PBWSClient115.PBD的含义、差别和使用方法
自PB10.5开始,PB中生成WebServie的向导中就多了一个选项:Use .NET Engine,对应这个选项,也多了两个文件PBWSClient105.PBD和PBWSClient105.PBX,这是怎么回事?为什么针对WebService,PB会搞两个方法?有不少客户和网友问到这相关的问题,我这里讲我的理解和研究和大家分享如下:(为了方便,就以PB11.5为例)
1:PBSoapClient115是针对EasySoap标准的(Java),PBWSClient115是针对.NET标准的 虽然WebService本应是一个通用的标准,但你会发现EasySoap标准和.NET标准的WebService是有一些差别的,我观察到差别有这些: A>PB对EasySoap标准的WebService支持可能不完整,生成的WebService往往不会让人很满意,比如,结构体会无端的加上一个前缀,和你之前定义的不同。 B>PB对.NET的WebService生成Proxy时,WebService的路径不是一个WSDL文件,而是一个asmx文件,当然你也可以在asmx后加一个?wsdl来转换。 C>如果是在.NET WebForm或.NET WinForm中,你使用PBWSClient115.PBD是没法发布的,你需要用PBWSClient115.PBL(下文会讲如何生成这个文件)
2:如何在.NET WebForm或.NET WinForm中使用PBWSClient115.PBL 在PB11.5中,如果要在.NET WebForm或.NET WinForm调用WebService,你必须使用Use .NET Engine方式生成WebService(我猜测是因为PBWSClient115.PBX使用了.NET FrameWork2.0的缘故),而且Target的Library List中需要用PBWSClient115.PBL,下面是步骤: A>创建一个PBL文件,取名PBWSClient115.PBL,并加入到您的Target中 B>在这个PBWSClient115.PBL上点右键,选择Import PB Extension...选择PBWSClient115.PBX导入
3、您可以用PBSoapClient115.PBD来调用.NET标准的 WebService 在PB11.5中,如果你不是要在.NET Target中调用.NET标准的 WebService,你只要在生成WebService的Proxy时不选择Use .NET Engine,并且在asmx文件后面加一个?wsdl,就可以生成一个EasySoap标准的Proxy,这时你可以把PBSoapClient115.PBD包含到你的Library List中来调用这个WebService。
|