1.Program下注册相关服务
app.UseStaticFiles();//使用静态文件
// ===设置额外可访问的文件夹路径===
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider("D:/Image/Panorama/"),//需要访问的文件夹
RequestPath = "/static",//转换为虚拟URL路径
OnPrepareResponse = (c) =>
{
c.Context.Response.Headers.Add("Access-Control-Allow-Origin", "*");
c.Context.Response.Headers.Add("Access-Control-Allow-Methods", "GET, POST, DELETE, PUT, OPTIONS, TRACE, HEAD, PATCH");
c.Context.Response.Headers.Add("Access-Control-Allow-Headers", "*");
}
});
使用:
string path = $"../static/文件名称";//资源外的文件
#region 加载本地图片,MVC显示图片的方法,不需要请忽略
public byte[] GetBytesFromImage(string filename)
{
try
{
FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read);
int length = (int)fs.Length;
byte[] image = new byte[length];
fs.Read(image, 0, length);
fs.Close();
return image;
}
catch (Exception ex)
{
return null;
}
}
///<img src="{{ path }}"/>访问控制器获取图片显示
public async Task<FileResult> Image()
{
byte[] image = { };
await Task.Run(() =>
{
image = GetBytesFromImage(path);
});
return new FileContentResult(image, "image/jpeg");
}
#endregion