用wcf实现带有“秒传”功能的网盘
写在前面
前面记录过这样一个关于“秒传”的实现思路,在这篇就弄了一个简单的demo实现了一下,当中有很多业务仍没考虑,只是将“秒传”的实现思路,用代码实现了一下。
关于秒传,可以参考这篇文章:何为“秒传”
项目结构

各项目的作用,这里就不再赘述了,看项目名称就一目了然了。
使用技术:wcf,linq to sql等。
开发环境:vs2013 ,sql server2012.
项目界面

默认登录用户:wolfy,密码:1234
主界面

简单测试
上传一个网盘中已经存在的文件

上传一个网盘中不存在的文件


数据表

有很多东西,都给忽略了,只是为了实现上传的功能,简单列举了几个字段,是那个意思就成。
上传已经存在的文件,则在服务端保留一个副本,并进行重命名,在数据库中的FilePath更新为重命名后的文件路径即可。
效果:

文件文件夹重命名可参考我前面的两篇文章中封装的类
[工具类]文件或文件夹xx已存在,则重命名为xx(n)(2)
待解决的问题
1、wcf上传大文件。
2、上传采用的同步方式(比较卡)
3、下载
4、分享
5、删除
6、空间扩展等。
7、文件夹上传下载删除。
8、界面的美化(文件或者文件夹以图标方式显示)
9、代码业务逻辑梳理(扔有些地方不严谨,比如上传成功后没有更新已用空间)。
这些问题,留着慢慢修改吧。
总结
其实也没用到什么高深的技术,只是觉得好玩,就用wcf实现了个上传下载的demo。加上最近在学习linq ,正好弄个简单的demo练练手。
源码下载:链接:http://pan.baidu.com/s/1hqtfyU4 密码:e6pd
用wcf实现带有“秒传”功能的网盘的更多相关文章
- ubuntu上传到百度网盘
1 2 亲测可以上传
- loadrunner上传文件到网盘
有人提问,loadrunner 上传文件搞不好,请求帮忙处理.让提供网址,用fiddler抓包上传部分,主要有3个请求 第一个请求GET https://yun.xxx.com/api/files/u ...
- Nginx集群之WCF大文件上传及下载(支持6G传输)
目录 1 大概思路... 1 2 Nginx集群之WCF大文件上传及下载... 1 3 BasicHttpBinding相关配置解析... 2 4 编写 ...
- 配置php.ini实现PHP文件上传功能
本文介绍了如何配置php.ini实现PHP文件上传功能.其中涉及到php.ini配置文件中的upload_tmp_dir.upload_max_filesize.post_max_size等选项,这些 ...
- 打造 html5 文件上传组件,实现进度显示及拖拽上传,支持秒传+分片上传+断点续传,兼容IE6+及其它标准浏览器
老早就注册了博客园帐号,昨天才发现,连博客都没开,Github也是一样,深觉惭愧,赶紧潜个水压压惊`(*∩_∩*)′ 言归正传.大概许多人都会用到文件上传的功能,上传的库貌似也不少,比如(jQuery ...
- MVC5:使用Ajax和HTML5实现文件上传功能
引言 在实际编程中,经常遇到实现文件上传并显示上传进度的功能,基于此目的,本文就为大家介绍不使用flash 或任何上传文件的插件来实现带有进度显示的文件上传功能. 基本功能:实现带有进度条的文件上传功 ...
- 30分钟玩转Net MVC 基于WebUploader的大文件分片上传、断网续传、秒传(文末附带demo下载)
现在的项目开发基本上都用到了上传文件功能,或图片,或文档,或视频.我们常用的常规上传已经能够满足当前要求了, 然而有时会出现如下问题: 文件过大(比如1G以上),超出服务端的请求大小限制: 请求时间过 ...
- 基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件
目录 1. 前言 2. 关于vue-simple-uploader 3. 基于vue-simple-uploader封装全局上传组件 4. 文件上传流程概览 5. 文件分片 6. MD5的计算过程 7 ...
- 百度webuploader如何实现秒传与断点续传
因为这是小众需求,所以默认没有做在webuploader里面,而只是提供hook接口,让用户很简单的扩展此功能. 那么,都有哪些重要的hook接口呢? before-send-file 此hook在文 ...
随机推荐
- 仅Firefox中A元素包含Select时点击Select不能选择option
这是在使用京东的一个日期组件时碰到的bug,重现bug的代码精简如下 <!DOCTYPE HTML> <html> <head> <title> 仅Fi ...
- Post-office 树状数组
Post office 题目描述 There are N(N<=1000) villages along a straight road, numbered from 1 to N for si ...
- Storm之spout,bolt编写
Storm,核心代码使用clojure书写,实用程序使用python开发,使用java开发拓扑. Nimbus节点接收到请求,对提交的拓扑进行分片,分成一个个的task,并将task和supervis ...
- SpringMVC接收参数的注解笔记
1.@RequestParam var param = {}; param.keys = delKeys.join();//delKeys是数组,如delKeys=['a',b','c'],join函 ...
- LeetCode题解-----First Missing Positive
Given an unsorted integer array, find the first missing positive integer. For example,Given [1,2,0] ...
- 有向图的拓扑排序算法JAVA实现
一,问题描述 给定一个有向图G=(V,E),将之进行拓扑排序,如果图有环,则提示异常. 要想实现图的算法,如拓扑排序.最短路径……并运行看输出结果,首先就得构造一个图.由于构造图的方式有很多种,这里假 ...
- Resharper团队协作之TODO
TODO 需求 首先我想跟大家分享一下我们团队的代码检查流程. 1. 项目经理随时会检查成员的代码,如果发现有不符合规范的代码,会在注释里面加todo.比如,假设leo的代码不符合规范,那么项目经理就 ...
- Volley(五)—— 自定义Request
详细解读Volley(四)—— 自定义Request Volley中提供了几个Request,如果我们有特殊的需求,完全可以自定义Request的,自定义Request自然要继承Request,那么本 ...
- 会动的大风车(css3)
今天用css3的写了一个会动的大风车,使用translate和rotate布局,使用animation制作动画效果:分享给大家 <!DOCTYPE html> <html lang= ...
- 日期选择器:jquery datepicker的使用
helloweba.com 作者:月光光 时间:2012-04-08 21:05 标签: jquery datepicker jquery ui 在jquery ui中,提供了一个非常实用 ...