码迷,mamicode.com
首页 > Web开发 > 详细

Web大文件上传控件-示例更新

时间:2016-08-15 17:14:30      阅读:340      评论:0      收藏:0      [点我收藏+]

标签:

up6-asp.net示例更新-重构文件夹业务逻辑

 

服务端更新

更新DBFile.cs

删除GetAllUnComplete2方法,此方法主要实现加载未完成的任务列表,包括文件和文件夹。

代码截图:

技术分享

 

删除GetAll方法,这个方法是最早的实现加载未完成的文件列表的逻辑。在这个方法中文件夹的子文件件列表信息是保存在一个字符串中,客户端使用时会对此字符串进行JSON解码。逻辑实现比较冗余。

代码截图:

技术分享

 

删除方法:GetAllUnComplete,此代码使用了较多和较频繁的数据库操作,效率性能比较低。逻辑实现比较复杂,对文件夹信息的处理比较容易出错误。

代码截图:

技术分享

 

删除方法:static public string GetAllComplete(int f_uid)

代码截图:

技术分享

 

删除方法:GetFilesByUid

代码截图:

技术分享

 

删除方法:GetUnCompletes

代码截图:

技术分享

 

新增fd_appender.cs

新增fd_child.cs

新增fd_file.cs

新增fd_root.cs

新增fd_uuid_appender.cs

folder逻辑主要重构了对文件的初始化逻辑。提高了效率

技术分享

 

新增un_file.cs

新增un_builder

这两个文件重构了加载未完成列表逻辑,代码质量,重复代码利用率有较大幅度提升。

技术分享

 

删除uc_builder.cs

删除uc_file_child.cs

删除uc_folder.cs

删除uncomplete/uc_builder,uc_file_child,uc_file,新的逻辑由un_file,un_builder实现。

技术分享

 

更新f_list.aspx

 

修改前:

技术分享

修改后

技术分享

 

重构文件夹初始化逻辑,新逻辑由fd_appender,fd_child,fd_file,fd_root,fd_uuid_appender实现。

其中fd_uuid_appender实现了在服务端完全保留文件夹层级结构的功能。

技术分享

 

更新fd_create.aspx

更新前:

技术分享

更新后:

技术分享

更新fd_create_uuid.aspx

更新前:

技术分享

更新后:

技术分享

 

JS更新

 

更新:up6.js

续传文件夹时,根据f_fdTask来判断文件夹类型改为根据fdTask来判断

更改前:

技术分享

 

更改后:

技术分享

 

更新:up6.folder.js

添加文件夹时显示文件数量改为使用files.length显示,同时取消pathLocal的赋值

更新前:

技术分享

更改后:

技术分享

 

构建文件夹对象时使用尝试复制选项

更改前:

技术分享

更改后:

技术分享

 

1.重构文件夹初始化逻辑

 

2.重构加载文件夹逻辑

 

技术分享

 

 

数据库更新

新增存储过程:fd_files_check

用于提升文件夹重复文件检查速度。当文件夹中文件数量比较多时此存储过程提升的速度更加明显。

代码截图:

技术分享

 

更新存储过程:f_process

代码截图:

技术分享

关联代码

DBFile.cs

技术分享

Web大文件上传控件-示例更新

标签:

原文地址:http://www.cnblogs.com/xproer/p/5773502.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!