继续上一篇 一个简单的利用 WebClient 异步下载的示例(二) 后,继续优化它. 1. 直接贴代码了: DownloadEntry: public class DownloadEntry { public string Url { get; set; } public string Path { get; set; } /// <summary> /// 当前处理的数据 /// </summary> public object Data { get; set; } publi…
继上一篇 一个简单的利用 WebClient 异步下载的示例(一) 后,我想把核心的处理提取出来,成 SkyWebClient,如下: 1. SkyWebClient 该构造函数中 downloadConfigs 参数是必须的,不能为 NULL,而 ProgressBar progressBar 可为空,只不过不能显示进度条而已. public class DownloadEntry { public string Url { get; set; } public string Path { g…
继上一篇文章 一个简单的利用 HttpClient 异步下载的示例 ,我们知道不管是 HttpClient,还算 WebClient,都不建议每次调用都 new HttpClient,或 new WebClient,而应该尽量重复对象,可以把一个 WebClient(或 HttpClient)理解成一个浏览器,不能没打开一个页面以后,就销毁它,再重新创建一个,这样会有性能损失,而建议一个线程共用一个 WebClient(或 HttpClient).这一次,我们利用 WebClient 来实现异步…
接着上一篇,我们继续来优化.我们的 SkyParallelWebClient 可否支持切换“同步下载模式”和“异步下载模式”呢,好处是大量的代码不用改,只需要调用 skyParallelWebClient.StartAsync() 就开始异步下载,而改为 skyParallelWebClient.StartSync(); 就同步下载.如图: 同步下载: 异步下载: 1. 同步下载模式 直接贴代码了: public partial class Form1 : Form { public Form1…
接上一篇,我们继续优化它. 1. DownloadEntry 类 public class DownloadEntry { public string Url { get; set; } public string Path { get; set; } /// <summary> /// 当前处理的数据 /// </summary> public object Data { get; set; } public DownloadEntry(string url, string sa…
可能你还会喜欢 一个简单的利用 WebClient 异步下载的示例  ,且代码更加新. 1. 定义自己的 HttpClient 类. using System; using System.Collections.Generic; using System.Globalization; using System.Net; using System.Net.Http; using System.Security.Cryptography; using System.Text; using Syste…
一步步打造一个简单的 MVC 电商网站 - BooksStore(二) 本系列的 GitHub地址:https://github.com/liqingwen2015/Wen.BooksStore 前:<一步步打造一个简单的 MVC 电商网站 - BooksStore(一)> 简介 上一次我们尝试了:创建项目架构.创建域模型实体.创建单元测试.创建控制器与视图.创建分页和加入样式,而这一节我们会完成两个功能,分类导航与购物车. 主要功能与知识点如下: 分类.产品浏览.购物车.结算.CRUD(增删…
我们通常都将编写好的Web Service发布在Tomcat或者其他应用服务器上,然后通过浏览器调用该Web Service,返回规范的XML文件.但是如果我们不通过浏览器调用,而是通过客户端程序调用,该如何实现?      接下来,我们利用Eclipse作为开发工具,演示一个Axis调用WebService的简单示例.步骤如下:           第一步:新建Web Project (一定要是web project,不能是java project).      第二步:导入AXIS类库.(官…
摘要 在项目开发中经常会用到下载文件,这里使用winform实现了一个带进度条的例子. 一个例子 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Net; using System.Text; using Syst…
namespace ConsoleAppSyncDownload{    class Program    { static void Main(string[] args)        {            WebClient webClient = new WebClient();            //Console.Write("输入下载文件地址:");            //var s = Console.ReadLine();            Conso…