#c# #quartz.net
#c# #quartz.net
Вопрос:
Я создал CronJob с использованием Quartz.Чистая версия 2.5.0. Цель этого CronJob
- Должен выполняться ежедневно в определенное время.
- Загрузите файл с FTP-сервера и сохраните его в локальном.
- Обработайте загруженный файл.
Использовали приведенный ниже код для загрузки файла из расположения FTP
FtpWebRequest request =
(FtpWebRequest)WebRequest.Create(objSettings.FTPHostName
"//" objSettings.FileName);
request.Method = WebRequestMethods.Ftp.DownloadFile;
request.Credentials = new
NetworkCredential(objSettings.FTPUserName,
objSettings.FTPPassword);
FtpWebResponse response =
(FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
FileStream file = File.Create(outputFileNameWithPath);
byte[] buffer = new byte[32 * 1024];
int read;
while ((read = responseStream.Read(buffer, 0, buffer.Length))
> 0)
{
file.Write(buffer, 0, read);
}
file.Close();
responseStream.Close();
response.Close();
Переменная outputFileNameWithPath будет иметь имя файла с путем. (Например. C:Services11-04-2019VENDORNAMEinvlistcsv.csv )
Я протестировал это CronJob в моей локальной среде, CronJob запускается в определенное время, загружает файл с FTP-сервера и сохраняет его в локальном и обрабатывает загруженный файл.
Я также проверил, доступен ли загруженный файл в local и доступен ли он в C:Services Папка.
Затем я настроил CronJob на сервере. CronJob выполняется без каких-либо ошибок, проблема, с которой я сталкиваюсь здесь, заключается в том, что загружаемые файлы службой CronJob недоступны в папке C:Services на сервере.
Также проверили, имеет ли папка полное разрешение, а также журналы. В журнале четко указано, что CronJob загрузил файл, и файл доступен в этом расположении, а также Cronjob обработал загруженный файл.Но файл недоступен.
Не уверен, что вызывает эту проблему. Пожалуйста, помогите мне решить эту проблему.
Комментарии:
1. Я бы проверил реальное значение переменной outputFileNameWithPath, например, записав ее в журнал. И затем значение файла. Существует (outputFileNameWithPath).
2. Grzesiek Danowski Спасибо за ответ. Зарегистрировали переменную outputFileNameWithPath и File. Существует информация (outputFileNameWithPath).
3. При анализе журнала в течение нескольких дней.. нашли, где была проблема. Спасибо Grzesiek Danowski за ваше предложение.