Проблемы компиляции ASP.net

Я столкнулся с очень интересной проблемой. Вот мои настройки для рассматриваемого сайта:

  • IIS7
  • Сайтфинити 4

Я создал несколько автономных страниц ASPX, которые не подключены к Sitefinity, и у меня возникли проблемы с компиляцией после внесения изменений в файлы .cs. Я внесу изменения в .cs, сохраняю и обновляю сайт, а изменения не вступают в силу. Если я внесу изменения в .aspx (поместив символ пробела в конце строки), кажется, что произойдет компиляция, и изменения, ранее внесенные в .cs, теперь вступают в силу.

Любые идеи, где я должен начать отлаживать это? Это странная проблема с кэшированием, которая становится недействительной только при обновлении файла .aspx? Это параметр Sitefinity, который каким-то образом предотвращает компиляцию изменений .cs?

-------------------- ИЗМЕНИТЬ --------------------

Я открываю сайт через «Файл»> «Открыть»> «Веб-сайт», и это .NET 4.0.


person nokturnal    schedule 20.04.2011    source источник
comment
Это зависит от того, какой файл вы изменяете. Если вы изменяете файлы кода программной части, вам придется снова скомпилировать их в среде разработки, такой как Visual Studio.   -  person bastianwegge    schedule 20.04.2011
comment
@wegginho, нет, если проект представляет собой веб-сайт, а не предварительно скомпилированное веб-приложение. Любые файлы .cs в папке App_Code должны быть скомпилированы при доступе посетителя сайта.   -  person Sambo    schedule 20.04.2011
comment
определение файлов кода программной части: Default.aspx — это сайт, Default.aspx.cs — файл кода программной части. Поправьте меня если я ошибаюсь.   -  person bastianwegge    schedule 20.04.2011
comment
Я предполагаю, что вы используете .Net framework v3.5 или v4....? Я не думаю, что ранние версии .Net поддерживали компиляцию Just-in-Time.   -  person Sambo    schedule 20.04.2011
comment
Изменения в файлах кода программной части также должны быть скомпилированы JIT-компилятором. Однако это только для веб-сайта... из VS: Файл › Новый › Веб-сайт.   -  person Sambo    schedule 20.04.2011
comment
Я открываю сайт через Файл › Открыть › Веб-сайт, и это .NET 4.0.   -  person nokturnal    schedule 20.04.2011


Ответы (1)


Я считаю, что на сайте Sitefinity для просмотра обновлений файлов кода программной части (.aspx.cs) или обычных файлов классов (.cs) вы можете:

  1. Перекомпилируйте сайт вручную с помощью Visual Studio
  2. Внесите изменения во внешний файл .aspx, который, как я полагаю, заставляет IIS/Cassini повторно использовать пул приложений (поскольку эти обновления не происходят мгновенно, как при обычной разработке .net).

Кроме того, если вы тестируете IE8, обязательно удалите кеш из панели инструментов разработчика. Я заметил, что IE НЕ удалит ваш кеш полностью, если вы не нажмете F12 (панель инструментов разработчика)> вкладка HTML> Очистить кеш браузера...

Это не ошибка, AFAIK.

person Ben Barreth    schedule 20.04.2011