- Регистрация
- 02.05.2015
- Сообщения
- 276
- Благодарностей
- 81
- Баллы
- 28
Здравствуйте! Уже неоднократно сталкиваюсь с тем, что один и тот же проект, отлично работающий на локальном домашнем компе, начинает «тупить» на серверах. Разумеется, я всегда тестирую и там и там, довожу до ума, но порой происходит какая-то мистика, разрешаемая только бубном. Например:
1. Есть список со следующими параметрами:
При добавлении строки в этот список при помощи C#:
на локальном компе файл "Список_1.txt" и директория "Списки" создаются автоматически в случае отсутствия, но на сервере такого не происходит. Переменная в список добавляется, но в файл не пишется. Для того, чтобы добавить строку в файл, необходимо заранее привязаться к нему при помощи кубика с отмеченной галкой "Создавать файл при отсутствии" (несмотря на то, что путь уже прописан в настройках списка). В таком случае пишется, но и то только в том случае, если после привязки и записью сделать паузу не менее 2 сек. Если менее, то синхронизация выполняется не всегда. Почему это происходит по-разному и как выглядит аналог привязки к списку с созданием файла при отсутствии на C#?
2. На сервере далеко не всегда удаляются файлы. Удалял и при помощи стандартного кубика и при помощи следующего кода:
а также при помощи обоих способов сразу, с паузами и без... Примерно в 40% случаях, файл не удаляется.
3. Один и тот же код работы со временем:
выводит разный результат на компе и на сервере.
Пример результата на компе: 14.03.2017
Пример результата на сервере: 3/14/2017 3:41:37 AM
В данном случае решение-то простое, сделать доп. преобразование:
Но вопрос в том, почему результаты вообще разные... Может кто-то ещё сталкивался с подобным и может объяснить почему так происходит? Или, быть может, есть какое-то универсальное решение данного вопроса? NetFramework, само собой, я обновлял везде до версии не ниже рекомендуемой.
Пример хостера, где 100% происходит всё вышеописанное: ultravds.com Никаких антивирусов и прочего стороннего софта не стоит.
На сервере установлена Windows Server 2012 R2 x64 + NetFramework 4.6.2
На компе Windows 7 x64 + NetFramework 4.6.2
Версия ZP: 5.10.5.1
1. Есть список со следующими параметрами:
При добавлении строки в этот список при помощи C#:
Код:
var list = project.Lists["Список"];
list.Add(project.Variables["var1"].Value);
2. На сервере далеко не всегда удаляются файлы. Удалял и при помощи стандартного кубика и при помощи следующего кода:
Код:
System.IO.File.Delete(project.Variables["img_path"].Value);
3. Один и тот же код работы со временем:
Код:
int stamptime = current_unix_time;
DateTime pDate = (new DateTime(1970, 1, 1, 0, 0, 0, 0)).AddSeconds(stamptime);
return pDate;
Пример результата на компе: 14.03.2017
Пример результата на сервере: 3/14/2017 3:41:37 AM
В данном случае решение-то простое, сделать доп. преобразование:
Код:
string true_date = pDate.ToString("dd.MM.yyyy");
Пример хостера, где 100% происходит всё вышеописанное: ultravds.com Никаких антивирусов и прочего стороннего софта не стоит.
На сервере установлена Windows Server 2012 R2 x64 + NetFramework 4.6.2
На компе Windows 7 x64 + NetFramework 4.6.2
Версия ZP: 5.10.5.1
Последнее редактирование: