angular调用WCF服务,读取文件夹下图片显示列表,下载另存为图片

时间:2023-01-26 16:53:51

读取文件夹下的文件

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[];
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, , 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;
};

效果:

angular调用WCF服务,读取文件夹下图片显示列表,下载另存为图片