You*_*sef 7 c# asp.net file-exists
net/C#应用程序我有项目列表.
在后面的代码中:我想为我的本地资源分配每个项目的图片.项目名称和图片名称相同.这些图片都在我项目的"图像"文件夹中.
我如何将图片分配给项目的示例:
Item1.PictureUrl = "images/items/" + item1.Name + ".jpg";
Run Code Online (Sandbox Code Playgroud)
我有没有照片的物品.我想为他们分配一张默认图片.
我尝试使用以下方法检查图片是否存在:
foreach(ObjectItem item in ListOfItems)
{
if(File.Exists("images/items/"+item.Name+".jpg"))
item.PictureUrl = "images/items/"+item.Name+".jpg";
else
item.PictureUrl= "images/Default.jpp";
}
Run Code Online (Sandbox Code Playgroud)
但是File.Exists方法总是返回false,即使图片存在也是如此.我也尝试使用'\'而不是'/'但是没有用
我该怎么做?
感谢您的任何帮助
com*_*ech 16
您需要将相对文件路径转换为物理文件路径,以便File.Exists正常工作.
您将需要使用Server.MapPath来验证文件是否存在:
if(File.Exists(Server.MapPath("/images/items/"+item.Name+".jpg")))
Run Code Online (Sandbox Code Playgroud)
此外,当您使用Server.MapPath时,通常应指定前导斜杠,以便请求相对于Web应用程序的目录.
如果未提供前导斜杠,则将相对于正在处理的当前页面生成路径,如果此页面位于子目录中,则无法访问images文件夹.
| 归档时间: |
|
| 查看次数: |
18763 次 |
| 最近记录: |