angular调用WCF服务,读取文件夹下图片显示列表,下载另存为图片
读取文件夹下的文件
public string ReadImagesPaths() { string result = string.Empty; try { string path = System.IO.Directory.GetCurrentDirectory(); DirectoryInfo files = new DirectoryInfo(path+@"\Images"); FileInfo[] fileinfo = files.GetFiles(); foreach (FileInfo file in fileinfo) { //result += files +@"\"+ file.Name + ";"; result += file.Name + ";"; } } catch(Exception ex) { _log.Error(ex); } return result; }
根据文件名下载图片并另存为:
public Stream DownloadImage(string name) { string path = System.IO.Directory.GetCurrentDirectory(); DirectoryInfo files = new DirectoryInfo(path + @"\Images"); FileInfo[] fileinfo = files.GetFiles(); FileStream filecontent; Byte[] filebyte = new Byte[1]; foreach (FileInfo file in fileinfo) { if (file.Name == name) { string filepath = files + @"\" + name; filecontent = new FileStream(filepath,FileMode.Open); filebyte = new Byte[filecontent.Length]; filecontent.Read(filebyte, 0, filebyte.Length); filecontent.Close(); } } string encodedFileName = HttpUtility.UrlEncode(name); WebOperationContext.Current.OutgoingResponse.ContentType = "application/octet-stream"; WebOperationContext.Current.OutgoingResponse.Headers.Add("Content-Disposition", string.Format("attachment;filename=\"{0}\";filename*=utf-8'' {1}", encodedFileName, encodedFileName)); return new MemoryStream(filebyte);
前段代码:
<button ng-click="imageDownload(item)">下载</button>
this.downloadAccessory=function(fileId){ location.href=hostAddress+'MapScheme/ImageDownload?name='+name; };
效果:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步