上一篇:在ASP.NET中调用存储过程方法新解 >>
体验.NET 2.0的优雅之异步Web服务调用
在.net2.0中(准确的说是vs.net 2005中),异步WebService异步调用的方式的例子:
| void DoSomethingTest() { localhost.Service service = new WindowsApp.localhost.Service(); service.HelloWorldCompleted += new WindowsApp.localhost.HelloWorldCompletedEventHandler(service_HelloWorldCompleted); // do Asyn calling here service.HelloWorldAsync(); } void service_HelloWorldCompleted(object sender, WindowsApp.localhost.HelloWorldCompletedEventArgs e) { if (e.Error == null) { MessageBox.Show(e.Result); } else { MessageBox.Show(e.Error.Message); } } |
服务器端代码
| [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class Service : System.Web.Services.WebService { public Service () {} [WebMethod] public string HelloWorld() { return "Hello World"; } } |
很简单,没有了AsyncCallback、IAsyncResult 这两个烦人的东西,调用的代码变得简洁、优雅了,而且可以从e.Result得到强类型的返回值(上例为"Hello World")。但是,有兴趣的话,可以看看vs.net2005生成的Referance.cs文件,那可比2003中的复杂很多。其中可以看到System.ComponentModel.AsyncCompletedEventArgs 、 System.Threading.SendOrPostCallback(delegate)这两个在 .net 1.x 中没有的“怪物”,估计用到的地方还不止WebService客户端。
|
编辑推荐:用.NET Remoting来开发分布式应用初步 |
下一篇:ASP.NET+AJAX解决网页打开等待问题 >>
相关文章:
- · 3DsMAX毛发系统做其他表面效果:落叶小狗
- · 三维模型倒角技术要领:“三线法”的应用
- · 3DS MAX实例剖析:金色圆珠笔
- · 3DsMAX实例:窗格透光效果模拟
- · PIXAR动画工作室二十年三维动画作品回顾
- · 用3Ds MAX体积光制作光芒片头特效
- · 快速更改Word文档行距
- · 流氓软件清理助手最新1.43版
- · 千千静听另类妙用集锦
- · 被删除文件恢复全攻略
- · 中国P2P联盟规范“点对点”应用
- · 玩Windows系统工具 就是这么简单
- · 挑战文件压缩极限 榨干压缩文件
- · WinRAR也能实现智能备份
- · 用Ghost软件实现基于PXE的网络硬盘克隆
- · Switch Off让你的关机有N种玩法
- · 妙用软件参数打造软件个性功能
- · 雅虎工具条还能挡间谍软件
- · 灵活应用批量处理工具 提高工作效率
- · 使用SyGate的黑白列表限制用户权限
- · 为闪存添加自启动功能
- · 百万人公测下载工具结果出炉
- · 全面升级您的Flash播放器
- · 用XP SysPad来缝制你的软件百宝囊
- · Google的网页加速工具 你玩了吗?
- · Ghost所有运行错误代码完全大揭秘
- · 用邮箱来做自己的下载网站
- · 合理地搭配视频格式和播放器
- · 从网页缓存中挖掘音乐和Flash资源
- · PPLive 1.0.9.6 新功能与常见问题
- · QQ想做网络电视台?QQ直播再出新版
- · 百万主页跟风大潮到来了
- · 优秀的磁盘文件管家:FileAnt
- · 打造你的影像梦工厂:WinDVD Creator
- · 荣获最佳搜索引擎品牌 搜霸酝酿巨变
- · 术业有专攻 批量改名 我有高招
- · QQ密码保护申诉处理结果的通知方式
- · 找回QQ密码的注意事项及QQ密码防盗建议
