Я работал в Visual Studio 2013 и тестировал некоторый код для обработки событий в определенные даты. Я изменил часы Windows на 01.01.2016, скомпилировал код в Visual Studio (в частности, веб-проект, который я технически опубликовал) и перенес файлы в мою среду разработки.

После тестирования я вернул системные часы на текущую дату и продолжил кодирование. Публикуется снова, и теперь я замечаю, что некоторые из файлов, которые я редактировал со времени последнего изменения, все еще показывают дату последнего изменения 01.01.2016. Теперь, когда я помещаю изменения в dev, он не знает, что файл был изменен, и никогда не отражает изменения, которые я сделал в коде.

Как я могу исправить компиляцию так, чтобы она компилировалась с использованием текущей и правильной даты и времени?

Я попытался удалить папку, в которой публикация подталкивает к мысли, что она будет использовать текущее правильное время системной даты, но это все еще не так.

2 ответа2

2
  1. Очистите ваше решение
  2. Восстановить решение
  3. Удалить все файлы в опубликованной области
  4. Переиздание

В более новых версиях Visual Studio есть возможность удалить все файлы как часть процесса публикации, по крайней мере, при публикации файловой системы.

Clean удалит существующие двоичные файлы для вашего источника. Это должно относиться к любым файлам, которые были созданы во время изменения системного времени.

Rebuild перекомпилирует все двоичные файлы с нуля. Эти новые файлы должны отражать текущее системное время. Кстати, избегайте использования обычной опции сборки , так как она не изменит файлы, которые являются новыми или неизменными в коде с момента их последней компиляции.

Наконец, удаление опубликованных файлов и повторная публикация будут экспортировать вновь созданные двоичные файлы без каких-либо старых версий с испорченными временными метками.

Вот некоторые сведения о различиях между сборкой, перестройкой и очисткой:http://www.codeproject.com/Articles/663453/Understanding-Clean-Build-and-Rebuild-in-Visual-St

Изменить: Эти шаги будут работать для большинства типов проектов VS, но не будут работать для традиционных приложений веб-форм ASP.Net, потому что файлы aspx являются как источником, так и контентом с точки зрения компиляторов, поэтому они не заменяются во время сборки.

0

Visual Studio Copying all files to temporary location below for package/publish: Я удалил временное местоположение и затем повторно развернул. Когда проект был завершен, повторное развертывание текущей даты было найдено в атрибутах измененного файла даты.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .