从local api上运行web api获取图像路径

时间:2012-12-18 18:30:12

标签: asp.net-mvc

我将图像存储在项目Web API中的App_Data文件夹中。我用路径存储在数据库中:

 var path = Path.Combine(System.Web.HttpContext.Current.Server.MapPath("~/App_Data/"), user.Username + ext);

从项目MVC客户端我调用Web Api,从路径图像我无法显示标记<img />。 Chrome显示错误:不允许加载本地资源。

<img id="img_id"  width="70px" heigh="70px" src="D:\Nguyen Nhu\Lap Trinh Hien Dai\ServerAPI\ServerAPI\App_Data\nophoto.gif"/>

如何解决?

1 个答案:

答案 0 :(得分:2)

通常,您应该使用Url.Content而不是Server.MapPath来映射MVC中的服务客户端Url。 Server.MapPath返回物理文件夹,只能由服务器端代码使用。

但是,App_Data是IIS中存储的特殊文件夹和文件won't be served

TL; DR :您需要使用其他文件夹存储图片,例如

Url.Content('~/MyImagesFolder/' + user.Username + ext);