public bool exists()
{
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(_host); // Создаем запрос к FTP серверу для получения даты и времени последней модификации файла
request.Credentials = new NetworkCredential(_userName, _password); // Устанавливаем учетные данные для аутентификации на сервере
request.Method = WebRequestMethods.Ftp.GetDateTimestamp; // Устанавливаем метод запроса как получение даты и времени последней модификации файла
try { using (FtpWebResponse response = (FtpWebResponse)request.GetResponse()) return true; } // Если запрос к серверу выполнен успешно, возвращаем true
catch (WebException ex) when (((FtpWebResponse)ex.Response).StatusCode == FtpStatusCode.ActionNotTakenFileUnavailable) { return false; } // Если в ходе запроса произошли какие либо ошибки, то возвращаем false
}