前往Shuct.Net首页

Shudepb PB反编译专家长时间以来,为业内同类软件事实上的唯一选择.细节,彰显专业.态度,决定品质.

关于PowerBuilder的搜索

PowerBuilder11最新功能体验--张玉才博客 张玉才博客欢迎光临我的博客,有问题请email:jxxyzyc@126.com 用户登陆用户:密码:保存密码 日历 2014> - 2>日一二三四五六 12345678910111213141516171819202122232425262728数据统计PB论坛(12) 数据库论坛(2) CRM论坛(0) 实验室管理论坛(0) Web相关技术(5) PB实用技术介绍(7) 杂文(1) 军事报道(1) 日志:28篇评论:5058个 留言:18个 访问:468849次注册人数:20人编码:UTF-8建站时间:2007-10-22最新日志正在读取数据最新评论正在读取数据友情链接正在读取数据 首页留言我的新浪博客PB实用技术介绍 PowerBuilder11最新功能体验 发布者:张玉才 | 年月日:2007-11-6 | 时间:22:38:53 | 本文摘自:http://blog.ccw.com.cn/blog-htm-do-showone-itemid-18694-type-blog.html这两天找到了.NET的安装光盘,准备将与Web Service相关的内容试用一下,也算是为“初体验”画上一个比较圆满的句号。我们先看看PowerBuilder11对于Web Service方面的支持,首先,可以将PowerBuilder中的NVO发布为支持.NET的assembly,当然是以弱命名方式发布,你可以根据需要使用gacutil.exe将assembly作为强命名发布,其实和传统DLL基本一样,只不过增加了一些发行方面的东东,这样不仅使得公司之间不会开发出重名的东东,也会避免“DLL黑洞”的出现。其次,还可以将NVO发布为Web Service,供其他支持Web Service的开发工具使用。最后,DataWindow可以使用Web Service作为数据源。针对这三项功能进行试用。 1. 将NVO发布为assembly 我在PowerBuilder 11中编写了一个非常简单的功能,即:返回一个“hello, tony!”的字符串。步骤非常简单,创建一个.NET Assembly的Template,而后根据向导输入相关参数,在NVO中编写方法,最后发布。无论使用C# 2005 Express Edition,还是PowerBuilder 11中都调用成功。 2. 将NVO发布为Web Service 还是刚才那个应用,创建一个.NET Web Service的Template,而后根据向导输入相关参数,最后发布。无论使用C# 2005 Express Edition,还是PowerBuilder 11中都调用成功。 3. 将Web Service作为DataWindow的数据源 在.NET中使用C#开发一个Web Service,其功能非常简单,从Microsoft SQL Server附带的pubs数据库中检索authors表中数据,而后以数组的方式返回。然后在PowerBuilder 11中创建一个数据来源是Web Service的DataWindow,检索数据成功!但是速度非常慢,无论第一次还是之后都需要21秒左右。 整体上来说PowerBuilder与.NET的交互还是非常不错的,不但兼容性好而且开发起来简单方便,第一次访问Web Service速度比较慢,大约需要15到20秒,第二次就非常快了不到1秒!对于开发人员来说要注意PowerBuilder 11与.NET数据类型的映射关系,尽量不要使用具有PowerBuilder特色的数据类型。 此外,使用PowerBuilder 11调用Web Service有一点小麻烦,但也不过只是多几个步骤而已(与调用EAServer的对象基本一致),在此稍稍介绍,详细内容大家可以参考附带的电子帮助及示例代码。 a. 在Target中引入PowerBuilder Extends(Sybase11\Shared\PowerBuilder \pbwsclient110.pbx),此时会在PBL中多出两个UserObject:soapconnection和soapexception。 b. Web Service Proxy Wizard创建需要调用的Web Service的代理,代理发布以后要把生成的DLL复制到EXE所在目录。 c. 使用soapconnection创建一个到代理的连接,此步骤需要三个参数分别是:创建好的代理实例,代理名称和WSDL位置(可以使用URL,比如:http://tony-zhang/assembly/n_assembly.asmx?wsdl)。如果实例创建失败,可以使用soapexception提供的getmessage()获取错误信息。 d. 调用Web Service提供的方法。需要注意的是不同语言之间的数据类型问题,尽量使用常规的字符串、数字等,不要使用与语言关系比较紧密的类型。 OK,这次体验到此为止,我想这个版本应该说是非常优秀的,确实值得我们期待! 文章来自:本站原创 评论:(95) | 查看次数:(3425) 评论: 1 发表评论眤称: 主页:验证码: Powered by JXXYBLOG v1.0.0 Copyright@2007,张玉才博客