跨平台环境下,asp.net如何支持文件夹的断点续传?
.NET程序员的20G文件上传历险记大家好我是甘肃的一名苦逼.NET程序员最近接了个外包项目客户的需求简直是要我老命啊来给大家扒一扒这个价值连城的项目需求项目需求地狱级难度大文件上传20G不是20M也不是2G是20G想想我的小水管服务器就瑟瑟发抖兼容性要求从IE8到现代浏览器全都要支持 - “总不能把业务机器扔掉吧”客户原话文件夹结构保留用户上传的文件夹可能有1000个分类文件还得保持层级断点续传关了浏览器、重启电脑都不能丢进度 - 这得用上黑魔法吧加密要求SM4、AES全都要传输存储都要加密预算100元以内还要求7×24小时技术支持、源代码、打包部署一条龙…技术选型在夹缝中求生存既然客户点名要WebUploader或原生JS预算又这么慷慨我只能选择…// 前端伪代码 - 用生命在兼容IE8varie8Flag/*cc_on!*/false;// 判断IE8的黑魔法if(ie8Flag){alert(亲您还在用IE8啊给您磕头了);// 这里要写一堆ActiveX和VBScript的兼容代码}else{// 现代浏览器可以用File API}文件夹上传的坑网上找的代码大多只支持文件上传文件夹上传保留层级结构自己造轮子吧// 后端C#处理文件夹结构的伪代码publicvoidHandleFolderUpload(HttpPostedFilefile,stringrelativePath){// relativePath是前端传来的文件夹相对路径stringserverPathPath.Combine(E:\\Uploads,relativePath);Directory.CreateDirectory(Path.GetDirectoryName(serverPath));file.SaveAs(serverPath);// 预算只够写伪代码了真实项目这里还要处理各种异常}断点续传实现思路前端分片计算文件哈希作为唯一标识后端记录已上传的分片信息用户中断后重新上传时先查询已上传分片// 前端断点续传逻辑functionresumeUpload(file){calculateFileHash(file).then(hash{$.get(/api/upload/progress?hashhash,function(data){// data返回已上传的分片列表uploadRemainingChunks(file,data.uploadedChunks);});});}加密传输方案// C# SM4加密示例简化版publicstringSM4Encrypt(stringinput,stringkey){// 这里应该是复杂的SM4算法实现// 但预算只够写个伪代码...return加密后的input假装加密了;}现实与理想的差距客户“这个功能很简单吧几天能做完”我内心OS几天给我几个月还差不多…表面“这个…我需要评估一下技术可行性…”给同行们的忠告接单前一定要评估需求合理性IE8支持真的是个大坑能推就推文件夹上传保留层级不是那么简单100元预算做这种需求…不如去要饭最后说点掏心窝子的话各位同行啊咱们程序员也要硬气一点。这种明显不合理的需求要么加钱要么拒绝。别为了接单把自己逼到绝路。至于那个QQ群广告…咳咳大家自己判断吧。反正我是不信什么2万项目提成1万的好事。真有这种好事他们为什么不自己接单呢最后的最后如果你真的非要做这个项目我建议先和客户重新谈需求和预算实在不行就用现成的商业解决方案虽然超预算真要自己实现做好加班到秃顶的准备祝你好运吧甘肃的程序员兄弟设置框架安装.NET Framework 4.7.2https://dotnet.microsoft.com/en-us/download/dotnet-framework/net472框架选择4.7.2添加3rd引用编译项目NOSQLNOSQL无需任何配置可直接访问页面进行测试SQL使用IIS大文件上传测试推荐使用IIS以获取更高性能。使用IIS Express小文件上传测试可以使用IIS Express创建数据库配置数据库连接信息检查数据库配置访问页面进行测试相关参考文件保存位置效果预览文件上传文件刷新续传支持离线保存文件进度在关闭浏览器刷新浏览器后进行不丢失仍然能够继续上传文件夹上传支持上传文件夹并保留层级结构同样支持进度信息离线保存刷新页面关闭页面重启系统不丢失上传进度。下载完整示例下载完整示例

相关新闻

必收藏|AI大模型入门到实战全攻略(小白/程序员速看)

必收藏|AI大模型入门到实战全攻略(小白/程序员速看)

近期AI应用开发HC爆涨💹,字节跳动在AI技术人才方面的投入尤其大!如何学习大模型 AI ? 由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。 但是具体到个人&#xff…

2026/7/6 19:24:03 阅读更多 →
PLGA15000-mPEG5000 (PLGA:50:50 LA为右旋),甲氧基聚乙二醇修饰聚乳酸-羟基乙酸共聚物

PLGA15000-mPEG5000 (PLGA:50:50 LA为右旋),甲氧基聚乙二醇修饰聚乳酸-羟基乙酸共聚物

PLGA15000-mPEG5000 (PLGA:50:50 LA为右旋),甲氧基聚乙二醇修饰聚乳酸-羟基乙酸共聚物 PLGA15000-mPEG5000 是一种 甲氧基聚乙二醇(mPEG5000)修饰的聚乳酸-羟基乙酸共聚物(PLGA),其中 PLGA 分子量约 15,00…

2026/7/5 9:51:37 阅读更多 →
如何保证mysql与redis双写一致性

如何保证mysql与redis双写一致性

MySQL 与 Redis 的双写一致性是缓存架构的核心难题。由于网络延迟、故障回滚、并发竞态等因素,两者只能追求最终一致性,无法保证强一致性(除非牺牲性能用分布式锁)。 什么是双写一致性 /* by 01022.hk - online tools website :…

2026/7/6 15:27:11 阅读更多 →

最新新闻

网易云音乐NCM格式终极解密指南:如何用ncmdump轻松转换加密音乐文件

网易云音乐NCM格式终极解密指南:如何用ncmdump轻松转换加密音乐文件

网易云音乐NCM格式终极解密指南:如何用ncmdump轻松转换加密音乐文件 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否曾在网易云音乐下载了心爱的歌曲,却发现在其他播放器或设备上无法播放?那…

2026/7/7 9:24:30 阅读更多 →
2026 合肥 GEO 服务商底层技术架构实测报告|RAG 语义引擎、多模型适配能力横向测评

2026 合肥 GEO 服务商底层技术架构实测报告|RAG 语义引擎、多模型适配能力横向测评

摘要 针对当前合肥 AI 搜索营销赛道服务商技术分层乱象,本文构建一套可复现的 GEO 服务商技术测评指标体系,从RAG 底层自研架构、多模型语义匹配精度、算法迭代响应时延、知识库结构化引擎、数据安全合规架构五大技术维度,对合肥区域主流 GEO…

2026/7/7 9:22:30 阅读更多 →
OBS AI背景移除插件:虚拟绿幕与低光增强的完整实用指南

OBS AI背景移除插件:虚拟绿幕与低光增强的完整实用指南

OBS AI背景移除插件:虚拟绿幕与低光增强的完整实用指南 【免费下载链接】obs-backgroundremoval An OBS plugin for removing background in portrait images (video), making it easy to replace the background when recording or streaming. 项目地址: https:/…

2026/7/7 9:22:30 阅读更多 →
计算机毕业设计之基于大数据的房地产销售数据分析系统

计算机毕业设计之基于大数据的房地产销售数据分析系统

随着房地产市场的日益繁荣,大数据技术在房地产销售领域的应用越来越广泛。本文旨在探讨基于大数据的房地产销售数据分析系统的设计与实现。通过收集和整合大量的房地产销售数据,利用大数据分析技术对其进行深入挖掘,为房地产企业和购房者提供…

2026/7/7 9:20:29 阅读更多 →
UE4SS在Palworld 0.1.3.0版本中的崩溃诊断与兼容性修复方案

UE4SS在Palworld 0.1.3.0版本中的崩溃诊断与兼容性修复方案

UE4SS在Palworld 0.1.3.0版本中的崩溃诊断与兼容性修复方案 【免费下载链接】RE-UE4SS Injectable LUA scripting system, SDK generator, live property editor and other dumping utilities for UE4/5 games 项目地址: https://gitcode.com/gh_mirrors/re/RE-UE4SS 技…

2026/7/7 9:20:29 阅读更多 →
Obsidian:从云端焦虑到知识自由之路

Obsidian:从云端焦虑到知识自由之路

作为一个常年与文档打交道的IT人,我最早用的是语雀和有道笔记等。这些产品功能确实强大,但有两个痛点让我越来越焦虑: 收费越来越贵:语雀个人版免费额度有限,想用Markdown、图床等功能就得付费;有道笔记的…

2026/7/7 9:16:29 阅读更多 →

日新闻

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

图片浏览是移动应用中最高频的场景之一。从社交应用的照片流到电商平台的商品图集,从旅游应用的景点相册到摄影作品展示——用户对图片浏览的体验要求不断提高:流畅的切换动画、直观的缩略图导航、便捷的收藏操作、自动播放模式。HarmonyOS NEXT ArkUI 虽…

2026/7/7 0:05:16 阅读更多 →
24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V稳压芯片完整选型指南 PW8600 PW75XX PW2815 PW2312B LDODC/DC全方案 一、24V稳压方案概述 24V直流电源在工业自动化、门禁系统、电梯控制、汽车电子、LED驱动、监控设备等场景中应用极广,是最常见的中压直流母线电压。要将24V母线稳定降压至下游MCU、传感器…

2026/7/7 0:05:16 阅读更多 →
RAG+知识图谱混合检索与Graph RAG核心对比

RAG+知识图谱混合检索与Graph RAG核心对比

做企业RAG落地的团队,往往容易卡在一容易踩坑的选型难题: 当需求单纯靠向量RAG搞不定、单纯靠知识图谱也搞不定,必须同时依赖「文本语义理解 实体关系推理」时,到底是做「向量图谱混合检索」就够了,还是必须上「Grap…

2026/7/7 0:07:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/6 8:11:50 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/6 8:11:52 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/6 6:52:56 阅读更多 →

月新闻