您现在的位置是:网站首页> 编程资料编程资料
Asp.net基于ajax和jquery-ui实现进度条_实用技巧_
2023-05-24
295人已围观
简介 Asp.net基于ajax和jquery-ui实现进度条_实用技巧_
前台用ajax不停进行查询,直到任务完成。进度条用的是jquery-ui。后台用一般处理程序处理相应,进度信息保存在HttpContext.Application中。
代码作为简单示例,实际应用时应对资源释放、防止多线程混乱等做进一步控制。
效果图:

代码:
前台:
后台:
// 2015年12月16日 09:53:11 // David Huang // 进度条示例 namespace ProgressTest { using System; using System.Threading; using System.Web; /// /// Handler1 的摘要说明 /// public class Handler1 : IHttpHandler { // context private HttpContext context; public bool IsReusable { get { return false; } } public void ProcessRequest(HttpContext context) { this.context = context; if (context.Request["RequestType"] == "AjaxRequest") { if (context.Request["Method"] == "GetProgress") { context.Response.Clear(); context.Response.Write(this.GetProgress()); context.Response.End(); } else { this.DoWork(); } } } /// /// 开始工作 /// private void DoWork() { for (int i = 0; i < 100; i++) { // 记录进度 // 实际应用中需要进一步控制(利用用户信息、cookies等),防止并发造成混乱 this.context.Application["progress"] = i + 1; Random r = new Random(); Thread.Sleep(r.Next(10, 100)); } // 完成后释放资源 this.context.Application["progress"] = null; } /// /// 查询进度 /// /// 进度 private int GetProgress() { if (this.context.Application["progress"] != null) { return (int)this.context.Application["progress"]; } else { return -1; } } } }以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
您可能感兴趣的文章:
相关内容
- .Net Core官方JWT授权验证的全过程_实用技巧_
- 如何在Asp.Net Core MVC中处理null值的实现_实用技巧_
- ASP.NET Core处理管道的深入理解_实用技巧_
- .net core中的Authorization过滤器使用_实用技巧_
- asp.net core 使用 TestServer 来做集成测试的方法_实用技巧_
- 详解ASP.NET Core 中基于工厂的中间件激活的实现方法_实用技巧_
- .NET必知的EventCounters性能指标监视器详解_实用技巧_
- 在ASP.NET Core5.0中访问HttpContext的方法步骤_实用技巧_
- ASP.NET Core3.1 Ocelot负载均衡的实现_实用技巧_
- ASP.NET Core3.1 Ocelot认证的实现_实用技巧_
