- Регистрация
- 17.09.2011
- Сообщения
- 262
- Благодарностей
- 25
- Баллы
- 28
Добрый день. Подскажите пож.
Не понимаю в чем проблема.
С первого раза файл создается (если отсутствует), но строки в него не записываются.
Чтобы строки записались в файл, приходится ещё раз вручную в PM нажать "далее" на сниппете, чтобы запустить его ещё раз. Тогда строки успешно записываются в файл на диске. Если файл уже создан, то записывает с первого раза.
Почему так?
В настройках списка стоят галочки "загружать из файла" "сохранять изменения списка в файл"
Не понимаю в чем проблема.
С первого раза файл создается (если отсутствует), но строки в него не записываются.
Чтобы строки записались в файл, приходится ещё раз вручную в PM нажать "далее" на сниппете, чтобы запустить его ещё раз. Тогда строки успешно записываются в файл на диске. Если файл уже создан, то записывает с первого раза.
Почему так?
В настройках списка стоят галочки "загружать из файла" "сохранять изменения списка в файл"
C#:
string PathToNewfilename = (project.Directory + "\\temp\\" + "TASK_IN_WORK_" + project.Variables["Project_Name"].Value + ".txt");
string PathToQueueFile = (project.Directory + "\\temp\\" + project.Variables["queue_filename"].Value + "_" + project.Variables["Project_Name"].Value + ".txt");
//Привязать к файлу задачи
//IZennoList TaskInWork = project.Lists["domains"];
//IZennoList QueueFile = project.Lists["В очереди на добавление в задачу"];
var QueueFile = project.Lists["В очереди на добавление в задачу"];
var TaskInWork = project.Lists["domains"];
QueueFile.Bind(PathToQueueFile);
TaskInWork.Bind(PathToNewfilename);
lock(Locker.QueueFilelock)
{
// проверяет существует ли фаил
if (!File.Exists(PathToNewfilename))
{
// если фаил не существует, то создает
File.Create(PathToNewfilename);
System.Threading.Thread.Sleep(2000);
}
//Если в списке меньше 500 строк
if (TaskInWork.Count < 500) //project.Variables["base_for_duplicate_delition_count_lines"].Value = project.Lists["База (список под удаление дулей)"].Count.ToString();
{
//переносим строки из одного списка в другой
project.Lists["domains"].AddRange(project.Lists["В очереди на добавление в задачу"].GetItems("0-500",true).ToList());
}
}