Asp.Net web 文件服務快速搭建

簡述 

    內容具體分為兩種分為上傳和下載部分,服務搭載仍然選擇IIS,內容還是相對簡單,只是內部使用,沒有使用太多的優化的技巧,net環境為4.7

上傳服務

  上傳需要注意的是,HttpPostedFileBase 不支持大文件傳輸,文件達到几M的時候就會溢出,所以需要修改web.config,拓展到1g大小

  
    
      
      
      
      
    
	  
		  
			  
			  
		  
	  
  
	
		
			
				
				
				
			
		
	

參考代碼如下

 public  string  UploadFile(String project,String  stage,string item,string mc,string type,string fileid, HttpPostedFileBase file)
 {
     string msg = "";
     if (file != null && file.ContentLength > 0)
     {
    

             // 返回成功消息
             msg = "文件上传成功";
     }
     else
     {
         // 返回错误消息
         msg = "请选择要上传的文件";
     }
    
     return msg;
 }

下載

  下載部分更為簡單,指定服務器的文件所在目錄,可以非常簡單實現文件下載

       public string download(String project, String stage, string item, string mc, string type, string fileid,string filename)
        {

            //Uploads/ok2build/All/TI/SMT前段Process FMEA/通訊錄.xls

            string filePath = Server.MapPath("~/Uploads"+"/"+type+"/"+stage+"/"+mc+"/"+project+"/"+item+"/"+filename);//路径
            FileInfo fileinfo = new FileInfo(filePath);
            Response.Clear();         //清除缓冲区流中的所有内容输出
            Response.ClearContent();  //清除缓冲区流中的所有内容输出
            Response.ClearHeaders();  //清除缓冲区流中的所有头
            Response.Buffer = true;   //该值指示是否缓冲输出,并在完成处理整个响应之后将其发送
            Response.AddHeader("Content-Disposition", "attachment;filename=" + filename);
            Response.AddHeader("Content-Length", fileinfo.Length.ToString());
            Response.AddHeader("Content-Transfer-Encoding", "binary");
            Response.ContentType = "application/unknow";  //获取或设置输出流的 HTTP MIME 类型
            Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312"); //获取或设置输出流的 HTTP 字符集
            Response.TransmitFile(filePath);

            return "OK";
        }

你可能感兴趣的:(C#,前端,asp.net,java)