写在前面

前面记录过这样一个关于“秒传”的实现思路,在这篇就弄了一个简单的demo实现了一下,当中有很多业务仍没考虑,只是将“秒传”的实现思路,用代码实现了一下。

关于秒传,可以参考这篇文章:何为“秒传”

项目结构

各项目的作用,这里就不再赘述了,看项目名称就一目了然了。

使用技术:wcf,linq to sql等。

开发环境:vs2013 ,sql server2012.

项目界面

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

主界面

简单测试

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

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

数据表

有很多东西,都给忽略了,只是为了实现上传的功能,简单列举了几个字段,是那个意思就成。

上传已经存在的文件,则在服务端保留一个副本,并进行重命名,在数据库中的FilePath更新为重命名后的文件路径即可。

效果:

文件文件夹重命名可参考我前面的两篇文章中封装的类

[工具类]文件或文件夹xx已存在,则重命名为xx(n)

[工具类]文件或文件夹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实现带有“秒传”功能的网盘的更多相关文章

  1. ubuntu上传到百度网盘

    1 2 亲测可以上传

  2. loadrunner上传文件到网盘

    有人提问,loadrunner 上传文件搞不好,请求帮忙处理.让提供网址,用fiddler抓包上传部分,主要有3个请求 第一个请求GET https://yun.xxx.com/api/files/u ...

  3. Nginx集群之WCF大文件上传及下载(支持6G传输)

    目录 1       大概思路... 1 2       Nginx集群之WCF大文件上传及下载... 1 3       BasicHttpBinding相关配置解析... 2 4       编写 ...

  4. 配置php.ini实现PHP文件上传功能

    本文介绍了如何配置php.ini实现PHP文件上传功能.其中涉及到php.ini配置文件中的upload_tmp_dir.upload_max_filesize.post_max_size等选项,这些 ...

  5. 打造 html5 文件上传组件,实现进度显示及拖拽上传,支持秒传+分片上传+断点续传,兼容IE6+及其它标准浏览器

    老早就注册了博客园帐号,昨天才发现,连博客都没开,Github也是一样,深觉惭愧,赶紧潜个水压压惊`(*∩_∩*)′ 言归正传.大概许多人都会用到文件上传的功能,上传的库貌似也不少,比如(jQuery ...

  6. MVC5:使用Ajax和HTML5实现文件上传功能

    引言 在实际编程中,经常遇到实现文件上传并显示上传进度的功能,基于此目的,本文就为大家介绍不使用flash 或任何上传文件的插件来实现带有进度显示的文件上传功能. 基本功能:实现带有进度条的文件上传功 ...

  7. 30分钟玩转Net MVC 基于WebUploader的大文件分片上传、断网续传、秒传(文末附带demo下载)

    现在的项目开发基本上都用到了上传文件功能,或图片,或文档,或视频.我们常用的常规上传已经能够满足当前要求了, 然而有时会出现如下问题: 文件过大(比如1G以上),超出服务端的请求大小限制: 请求时间过 ...

  8. 基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件

    目录 1. 前言 2. 关于vue-simple-uploader 3. 基于vue-simple-uploader封装全局上传组件 4. 文件上传流程概览 5. 文件分片 6. MD5的计算过程 7 ...

  9. 百度webuploader如何实现秒传与断点续传

    因为这是小众需求,所以默认没有做在webuploader里面,而只是提供hook接口,让用户很简单的扩展此功能. 那么,都有哪些重要的hook接口呢? before-send-file 此hook在文 ...

随机推荐

  1. Web Storage API : LocalStroage

    这是一篇详细介绍详细介绍详细介绍_(:з」∠)_ 背景: 当你访问一个页面,并不是丢到服务器,等待用户访问就可以了的.从输入网址到显示网页的全过程,可以参考这里 简单来说,在输入url按下回车键后,首 ...

  2. 轮式移动机器人QBot的使用

    夏季学期选了智能移动机器人导论课程,开始接触移动机器人.作为一门面向大二.大三学生的一门导论式的课程,课程作业其实并不太难,然而我们为了完成课程作业,前前后后还是弄了好几个星期,以至放了暑假都还要和Q ...

  3. Linux命令的类型

    1.内建命令: 由shell程序自带的命令,最常见的有cd.pwd等. 使用type命令即可查看命令属于哪种,比如: #type cd cd is a shell builtin ————>看到 ...

  4. char,vchar,nchar,nvchar的区别

    char和varchar的长度都在1到8000之间,它们的区别在于char是定长字符数据,而varchar是变长字符数据.所谓定长就是长度固定的,当输入的数据长度没有达到指定的长度时将自动以英文空格在 ...

  5. gunplot demo

    //author : Leon yangli0534@gmail.com #include <stdlib.h> #include <stdio.h> #include < ...

  6. UVA 11992 Fast Matrix Operations (二维线段树)

    解法:因为至多20行,所以至多建20棵线段树,每行建一个.具体实现如下,有些复杂,慢慢看吧. #include <iostream> #include <cstdio> #in ...

  7. sql 入门经典(第五版) Ryan Stephens 学习笔记 (第六,七,八,九,十章,十一章,十二章)

    第六章: 管理数据库事务 事务 是 由第五章 数据操作语言完成的  DML ,是对数据库锁做的一个操作或者修改. 所有事务都有开始和结束 事务可以被保存和撤销 如果事务在中途失败,事务中的任何部分都不 ...

  8. JMeter学习(二十五)HTTP属性管理器HTTP Cookie Manager、HTTP Request Defaults

    Test Plan的配置元件中有一些和HTTP属性相关的元件:HTTP Cache Manager.HTTP Authorization Manager.HTTP Cookie Manager.HTT ...

  9. Volley(三)—— ImageRequest & Request简介

    Volley(三)—— ImageRequest & Request简介 上 篇文章我们讲 到了如何用volley进行简单的网络请求,我们可以很容易的接受到string.JsonObjec类型 ...

  10. 25个实用的jquery技巧

    1. 去除页面的右键菜单   $(document).ready(function(){ $(document).bind(“contextmenu”,function(e){returnfalse; ...