Blue Dream

记录成长的每一个脚印,写下漫长的程序人生
  首页  :: 订阅 订阅  :: 管理

利用SOAP(Webservice)上传文件

Posted on 2006-08-17 11:57  Dennis  阅读(1170)  评论(0)    收藏  举报
[WebMethod(Description="上传并保存图片文件")]
  public bool SaveFile(byte[] binData,string fileName){
   bool success=false;   

   string savePath=System.Configuration.ConfigurationSettings.AppSettings["UploadDirectory"];
   if(savePath==null) savePath="Photo";
   if(savePath.IndexOf(":\\")<0) savePath=Server.MapPath(savePath);//不是绝对路径
   if(!savePath.EndsWith("\\")) savePath += "\\";

   if(!Directory.Exists(savePath)){
    throw new Exception("服务器端没有找到有效的保存路径!");
   }
   
   FileStream fileStream=null;
   try{
    fileStream=new FileStream(savePath + fileName,FileMode.Create,FileAccess.Write);
    //write the file
    fileStream.Write(binData,0,binData.Length);
    fileStream.Flush();//clear the buffer,write the data to the hard disk
    success=true;
   }catch(Exception ex){
    throw new Exception(ex.Message); 
   }finally{
    fileStream.Close();
   }
   return success;
   
  }  

解决思路:编写WebService过程SaveFile(byte[] binData,string fileName0;
客户端直接用调用,把数据流作参数传上来就完了。