随笔分类 -  C#

摘要:当下人工智能可谓是风头正劲,几乎所有的大厂都有相关的技术栈。微软在 AI 领域自然也是投入了重注,并且以 Azure 认知服务的方式投入了市场: 也就是说作为开发者我们不需要学习太多 AI 的理论知识,直接使用 Azure 提供的认知服务 API 就可以在程序中实现 AI 的功能了! 本文作为介绍 阅读全文
posted @ 2018-04-16 08:43 sparkdev 阅读(10054) 评论(13) 推荐(33) 编辑
摘要:在程序中对文件进行压缩解压缩是很重要的功能,不仅能减小文件的体积,还能对文件起到保护作用。如果是生成用户可以下载的文件,还可以极大的减少网络流量并提升下载速度。最近在一个 C# 项目中用到了创建压缩文件的功能,在此和同学们分享一下使用心得。 SharpZipLib 库 既然是很重要的用能,那么如果每 阅读全文
posted @ 2017-05-08 19:56 sparkdev 阅读(20816) 评论(28) 推荐(40) 编辑
摘要:在云计算大行其道的时代,当你要部署一个网站时第一选择肯定是各式各样的云端服务。那么究竟使用什么样的云端服务才能够以最快捷的方式部署一个 ASP.NET Core的网站呢?Azure 的 Web App 服务是个很好的选择。 下面我们会通过 Visual Studio 创建一个 Asp.net Cor 阅读全文
posted @ 2017-04-16 17:42 sparkdev 阅读(7305) 评论(15) 推荐(17) 编辑
摘要:注意,本文所说的断点续传特指 HTTP 协议中的断点续传。本文主要聊聊思路和关键代码,更多细节请参考本文附带的 demo。 工作原理 HTTP 协议中定义了一些请求/响应头,通过组合使用这些头信息。我们可以在一次 HTTP 请求中只请求一个文件中的一部分数据。这样我们就可以把已经下载的数据存起来,下 阅读全文
posted @ 2016-12-07 16:13 sparkdev 阅读(23889) 评论(6) 推荐(20) 编辑
摘要:在 C# 中,除了 WebClient 我们还可以使用一组 WindowsAPI 来完成下载任务。这就是 Windows Internet,简称 WinINet。本文通过一个 demo 来介绍 WinINet 的基本用法和一些实用技巧。 接口介绍 相比 WebClient 的用法,Win32API 阅读全文
posted @ 2016-11-11 21:50 sparkdev 阅读(13890) 评论(4) 推荐(6) 编辑
摘要:最近更新了一个下载小工具,主要提升了下面几点: 1. 在一些分公司的局域网中,连接不上外网 2. 服务器上的文件更新后,下载到的还是更新前的文件 3. 没有下载进度提示 4. 不能终止下载 下面和大家分享一些心得。 鉴于各种复杂的网络环境,笔者决定采用不同的编程接口进行下载尝试,以增加程序的可用性。 阅读全文
posted @ 2016-11-04 23:00 sparkdev 阅读(20600) 评论(8) 推荐(10) 编辑
摘要:在编程的过程中,我们会遇到很多需要异步操作的场景。比如要下载一个文件,如果使用同步的方式进行下载,那么UI操作就会被卡住,这时最好能够使用异步的方式进行下载。在C#中,很早就开始支持异步的操作了,只不过早期的方法写起来有些麻烦。到了C# 5.0的时候,直接添加了两个关键字:async 和 await 阅读全文
posted @ 2016-10-08 13:16 sparkdev 阅读(10207) 评论(3) 推荐(7) 编辑
摘要:有时候我们需要在程序中执行另一个程序的安装,这就需要我们去自定义 msi 安装包的执行过程。 需求 比如我要做一个安装管理程序,可以根据用户的选择安装不同的子产品。当用户选择了三个产品时,如果分别显示这三个产品的安装交互 UI 显然是不恰当的。我们期望用一个统一的自定义 UI 去取代每个产品各自的 阅读全文
posted @ 2016-10-05 17:37 sparkdev 阅读(10512) 评论(9) 推荐(9) 编辑
摘要:在C#程序中,经常会有一些耗时较长的CPU密集型运算,如果直接在 UI 线程执行这样的运算就会出现UI不响应的问题。解决这类问题的主要途径是使用多线程,启动一个后台线程,把运算操作放在这个后台线程中完成。但是原生接口的线程操作有一些难度,如果要更进一步的去完成线程间的通信就会难上加难。 还好 .NE 阅读全文
posted @ 2016-09-25 17:26 sparkdev 阅读(74510) 评论(23) 推荐(39) 编辑

点击右上角即可分享
微信分享提示