Rad*_*dhi 8 asp.net wcf file-upload
我正在建立一个网站,我需要一个用户可以上传大型视频文件的页面,我已经创建了带有流媒体的WCF服务,但我从网页的Button_Click事件中调用了WCF服务.
我已经使用下面提到的文章来创建WCF服务
我已经使用了流,因为它应该是高效的,不应该缓存在服务器的内存中.
现在问题
1)我怀疑整个文件是否上传到Web服务器然后它被转移到WCF服务服务器...如果这是真的那么我没有利用流媒体以及iis和web服务器将关闭很快,如果用户上传大文件或多个用户正在上传文件
2)是否有其他有效的方法与其他技术进行相同的操作
请帮我 ...
编辑:
如果我没有在ASP .Net代码中调用WCF服务方法,那么它也会将字节传输到我用HTTPFox检查过的Web服务器
我已经通过上传控件检查了上面的内容,并在UI上放了一个按钮,其click事件绑定到后面的代码中的一个方法.
所以,我仍然对数据的传输方式感到困惑
注意:如果我在button_click上放置一个调试点并上传10 kb文件,它会在不到1秒的时间内完成.但如果我上传50 MB的文件,那么它需要时间.
我在该button_click事件中放置了调用WCF服务的代码
1)我怀疑整个文件是否上传到Web服务器然后它被转移到WCF服务服务器...如果这是真的那么我没有利用流媒体以及iis和web服务器将关闭很快,如果用户上传大文件或多个用户正在上传文件
不,你这里的东西很混乱.当您使用WCF流式传输上传大型文件时,该文件将以块的形式发送 - 大小为几千字节的块.WCF服务器 - 在IIS中运行或在NT服务或控制台应用程序中自托管 - 同时接收这些块并在它们到达时将它们写入磁盘.
您不"将整个文件上传到Web服务器",然后将其"传输"到WCF服务--WCF服务本身正在接收和处理文件 - 并且只有一次.
如果你自己托管你的WCF服务 - 在控制台应用程序,Winforms应用程序或Windows NT服务中 - 甚至没有任何IIS或Web服务器参与AT ALL.WCF自己处理它.
使用WCF流可能是最有效的内存之一,也是将大文件传输到服务器的最简单方法之一.
查看有关该主题的更多示例和博客文章:
归档时间: |
|
查看次数: |
3011 次 |
最近记录: |