Вы должны дать физический путь, а не виртуальный путь (URL), вы можете использовать WebRequest найти, если файл существует на данный url
. Вы можете прочитать это article, чтобы просмотреть различные методы проверки наличия ресурса при заданном URL-адресе.
private bool RemoteFileExists(string url)
{
try
{
//Creating the HttpWebRequest
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
//Setting the Request method HEAD, you can also use GET too.
request.Method = "HEAD";
//Getting the Web Response.
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
//Returns TURE if the Status code == 200
return (response.StatusCode == HttpStatusCode.OK);
}
catch
{
//Any exception will returns false.
return false;
}
}
Редактировать на основе комментариев, запуска кода на сервере, где расположены файлы, доступ по URL. Я предполагаю, что ваша папка для загрузки находится в корне каталога веб-сайтов.
ImageURL = String.Format(@"/Uploads/docs/{0}/Logo.jpg", SellerID);
if(!File.Exists(System.Web.Hosting.HostingEnvironment.MapPath(ImageURL))
{
}
Этот код запускается удаленно или локально с веб-сайта/службы? – Despertar
его на локальном, однако я получаю defaultLogo, но файл существует, похоже, работает только для полного URL-адреса, любой indepth о том, как работает файл, любая ссылка? – brykneval