@Djasar

Как просмотреть папки по нескольким маскам из файла?

Код работает на поиск папки на sftp по маске (заданная в конфигурационном фале config.xml)
Если маска совпадала то мы заходим в эту папку и считываем имена файлов, и записываем в таблицу для загрузки в БД
DownloadSetting config = new DownloadSetting("config.xml");
			...			  
			  sftp.Connect();
  			var directories = sftp.ListDirectory(config.remotePath).Where(file => (file.Name != ".") && (file.Name != "..")).ToList();
				
				foreach (var directory in directories){
					if (directory.Name.Contains(config.DirectoryMask) == true){
										{
					var listFiles = sftp.ListDirectory(config.remotePath + directory.Name).Where(file => ((file.Name != ".") && (file.Name != "..")) & (file.IsDirectory==false)).ToList();
												
						if (File.Exists(config.fileScanRemotePath) && listFiles.Count > 0)
					}
				}
				sftp.Disconnect();
				
				DataTable csvData = GetDataTabletFromCSVFile(config.fileScanRemotePath);


Сейчас нужно изменить DirectoryMask на список в фале scan.csv (в этом списке только те папки которые он должен просмотреть - ) например : на sftp есть папки FOOD_TR_12312 TAKE_TR_8769_s2 TAKE_TR_0000_s2 а в файле scan.csv имена TR_12312 и TR_8769_s2, получается должен зайти только в 2 папки из трех.

csv прочитать вроде понял как, а как это совместить не разобрался

List<string> TRlist = new List<string>();
TRlist = File.ReadAllLines(@"csan.csv").ToList();


Помогите чем можете. От души благодарен.
  • Вопрос задан
  • 64 просмотра
Решения вопроса 1
@Djasar Автор вопроса
Сам спросил и сам ответил. :)
Всего - то нужно было сделать так

foreach (var directory in directories)
                {
                    foreach (string lines in TRlist)
                    {
                        if (directory.Name.Contains(lines) == true)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы