Silverlight 上传 大文件分块上传

最近在研究Silverlight中,突然想到如何进行文件上传的问题

 

网上找了很多资料后得出的一点结论

 

搜索Silverlight 上传 出现得最多的是 代震军BLOG - 博客园 里的文章

 

看过他的文章后,发现他说提到的上传是一个开源项目的,很好,但是很复杂,也不适合初学者学习。看了以后一头雾水是很正常的。

 

之后,自己又了解了其他方面的上传资料

 

发现 Silverlight 上传可以通过两种途径

1 使用 Webclient 类的 OpenWrite 方法,将文件流包含在请求中传递到接受该请求的Aspx或Ashx上,然后服务器接收到请求流后,将InputStream文件流保存到服务器上。

 

2 使用WCF或者Webservice ,Silverlight获取文件流后,将其整个或者分块的读取到一个字节数组,然后将字节数组作为参数 调用服务的方法,当然 服务的方法也要定义参数来接收字节数组,然后写入到服务器文件流中保存,如果采用分块读取字节数组就自然的形成了分块上传的模式,当然,使用分块上传,应该要将每次读取到的字节数组保存成小块的临时文件,最后一块上传完成后,WCF或WS服务再进行组装成最终文件保存。

 

由于长期开发ASP.NET,突然考虑到上传还一下子摸不到头脑,铭记,Silverlight是客户端的,利用服务(WCF ,WS) 就可以将客户端和服务器端密切的联系起来,以往的ASP.NET,客户端只能通过HTTP请求来与服务器端通信,但是SILVERLIGHT就更加灵活多样了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Silverlight文件(大文件)上传项目源码 一个免费的SL多文件上传,支持大文件上传 Features(特色): - Select multiple files to upload (选择多文件上传) - Upload multiple files at the same time (asynchonous)(一次上传文件,异步刷新) - Cancel a single upload, or clear the full list(可以取消单个上传或清空上传列表) - Shows the overall progress(显示所有上传进度条) - Error notification when upload failed(上传错误会有提示) For developers / webmasters(对于开发者或者网管): - Configure file extension filter (for example, only .jpg files) (配置支持的格式,如仅仅支持jpg) - Configure maximum file size (设置最大上传尺寸) - Configure the number of simultaneous uploads (设置一次最多上传数量) - Input for custom parameters (输入自定义参数) - Basic webservice included - Change the default color by setting a single parameter(可以改变默认演示) - JavaScript events and properties for integration in your website Free Silverlight Multi File Uploader 配置参数说明: MaxFileSizeKB: File size in KBs.(最大上传尺寸,以KB为单位) MaxUploads: Maximum number of simultaneous uploads(一次上传最多的文件数) FileFilter: File filter, for example ony jpeg use: FileFilter=Jpeg (*.jpg) |*.jpg(上传文件格式) CustomParam: Your custom parameter, anything here will be available in the WCF webservice DefaultColor: The default color for the control, for example: LightBlue Possible parameters: <asp:Silverlight ID="Xaml1" runat="server" Source="~/ClientBin/mpost.SilverlightMultiFileUpload.xap" MinimumVersion="2.0.30523" Width="415" Height="280" InitParameters="MaxFileSizeKB=1000,MaxUploads=2,FileFilter=,CustomParam=1,DefaultColor=LightBlue" />

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值