<%# (File.Exists(("ProductImages/"+Convert.ToString(Eval("products_image"))))) ? ("ProductImages/"+Convert.ToString(Eval("products_image"))) : "ProductImages/noimage_small.jpg" ; %>
Довольно долго и нечитаемо, не правда ли?
Я бы предложил добавить метод к вашему коду или в теге <script>
.
// returns the imageFile parameter if the file exists, the defaultFile parameter otherwise
string ImageFileExists(string imageFile, string defaultFile) {
if (File.Exists(Server.MapPath(imageFile)))
return imageFile;
else
return defaultFile;
}
И тогда вы просто используете
<%# ImageFileExists("ProductImages/" + Eval("products_image").ToString(), "ProductImages/noimage_small.jpg") %>
Обратите внимание, что я добавил Server.MapPath
вызов метода, чтобы File.Exists
действительно выглядел в нужном месте.