我有普通的电子商务应用程序,我将 ITEM_IMAGE_NAME 存储在数据库中,有时经理会拼错图像名称。
为了避免“丢失图像”(IE 中的红色 X),每次我显示产品列表时,我都会检查服务器以查找与产品相关的图像,如果该文件不存在 - 我将其替换为默认图片。
据我所知,这不会影响性能,但我想知道是否有任何替代方法可以解决“丢失图像”问题。
我正在使用 ASP.NET + C# (.NET 3.5)
部分代码:
foreach (Item item in Items)
{
string path = Path.Combine("~/images/", item.categoryImage);
item.categoryImage = File.Exists(Server.MapPath(path)) ? item.categoryImage : GetImageDependingOnItemType();
}
最佳答案
你可能会考虑使用 javascript
<img src="image.jpg" onerror="this.onerror=null;this.src='default.jpg'">
编辑:或者编写 404.aspx 返回默认图像,如果请求的图像不存在的话。
关于c# - 如果找不到指定的图像文件,显示默认图像的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/717734/