• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

ASP.NET 2.0 Ajax程序:保持用户上下文

发布: 2008-4-08 13:12 | 作者: ASP.NET 2.0 Ajax程序 | 来源: examda.com | 查看: 34次 | 进入软件测试论坛讨论

领测软件测试网 ——此文章摘自《ASP.NET AJAX程序设计:第II卷(客户端)》定价:55元 特价:41.25元 购买>>

    “异步”执行意味着原本从头到尾执行的函数被拦腰截断,分成了两个不同的函数。而这两个函数之间的联系往往又非常紧密,例如有些时候我们需要在后一个函数(即回调函数)中访问前一个函数中计算出来的变量,或是在后一个函数中得到前一个函数执行时的上下文等信息。特别地,若是几个不同的异步函数均提供了同一个回调函数进行处理,我们一般还要在回调函数中知道是哪个函数引发的这次回调。为了满足这些需求,异步调用中自然产生了用户上下文(user context)的概念。

    ASP.NET AJAX异步通信层所提供的异步调用模型中同样提供了对传递用户上下文信息的支持。我们还是使用一个简单的示例程序演示其具体的实现。

    程序的功能并不复杂:两个按钮都将异步调用服务器端的同一个Web Service并指定同一个回调函数,取得服务器端当前时间之后显示出来,同时显示出来的还有用户点击了哪个按钮的信息。如图3-7和图3-8所示,注意其中用户上下文的不同。


图3-7  点击第一个按钮取得服务器端当前时间


图3-8  点击第二个按钮取得服务器端当前时间

    Web Service的声明如下,返回当前服务器端时间而已:
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [ScriptService]
    public class UserContextService : System.Web.Services.WebService
    {
        [WebMethod]
        public string GetServerDateTime()
        {
            return DateTime.Now.ToString();
        }
    }

    页面中的ScriptManager控件引用了该Web Service,以便生成其客户端调用代理:
    <asp:ScriptManager ID="sm" runat="server">
        <Services>
            <asp:ServiceReference Path="Services/UserContextService.asmx" />
        </Services>
    </asp:ScriptManager>

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: Ajax程序


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网