正确处理WCF文件及解决方案

虽然有许多人对WCF文件的使用性表示怀疑,但在年复一年的不断发展中,但前提是要深入理解到底什么是WCF文件,及WCF是怎么运作的。 下面就对WCF文件进行深一步的介绍。。。

成都创新互联专注于企业成都全网营销、网站重做改版、章丘网站定制设计、自适应品牌网站建设、H5场景定制商城网站定制开发、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为章丘等各大城市提供网站开发制作服务。

这样,既不用添加服务引用,也不需要生成代理。文件传输的函数不是很难,代码如下:

 
 
 
  1. publicvoidTransferFile(FileTransferMessagerequest)  
  2. {  
  3. stringlogInfo;  
  4.  
  5. Program.Get_ILog().Log(logInfo=string.Format("开始接收文件,name={0}",request.FileName));//填写日志  
  6. //文件信息  
  7. stringuploadFolder=AppValue.GetParam()._saveDir;  
  8. stringsavaPath=request.SavePath;  
  9. stringfileName=request.FileName;  
  10. StreamsourceStream=request.FileData;  
  11. FileStreamtargetStream=null;  
  12. //判断文件是否可读  
  13. if(!sourceStream.CanRead)  
  14. {  
  15. thrownewException("数据流不可读!");  
  16. }  
  17. if(savaPath==null)savaPath=@"文件传输\";  
  18. if(!savaPath.EndsWith("\\"))savaPath+="\\";  
  19. if(!uploadFolder.EndsWith("\\"))uploadFolder+="\\";  
  20.  
  21. uploadFolderuploadFolder=uploadFolder+savaPath;  
  22. //创建保存文件夹  
  23. if(!Directory.Exists(uploadFolder))  
  24. {  
  25. Directory.CreateDirectory(uploadFolder);  
  26. }  
  27.  
  28. intfileSize=0;  
  29. stringfilePath=Path.Combine(uploadFolder,fileName);//Combine合并两个路径  
  30. try  
  31. {  
  32. 文件流传输  
  33. using(targetStream=newFileStream(filePath,FileMode.Create,FileAccess.Write,FileShare.None))  
  34. {  
  35. 定义文件缓冲区  
  36. constintbufferLen=4096;  
  37. byte[]buffer=newbyte[bufferLen];  
  38. intcount=0;  
  39.  
  40. while((count=sourceStream.Read(buffer,0,bufferLen))>0)  
  41. {  
  42. targetStream.Write(buffer,0,count);  
  43. fileSize+=count;  
  44. }  
  45. targetStream.Close();  
  46. sourceStream.Close();  
  47. }  
  48. }  
  49. catch(Exceptionex)  
  50. {  
  51. Program.Get_ILog().Log(logInfo+ex.Message);  
  52. }  
  53.  
  54. Program.Get_ILog().Log(string.Format("接收文件完毕name={0},filesize={1}",  
  55. request.FileName,fileSize));  

WCF文件其他的代码感兴趣的朋友下载来研究吧!

网页名称:正确处理WCF文件及解决方案
链接地址:http://www.shufengxianlan.com/qtweb/news22/302072.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联