Как работают приложения ASP.NET при развертывании без файлов с выделенным кодом? - PullRequest
2 голосов
/ 16 октября 2008

При развертывании приложения в IIS без всех файлов, содержащих код (VB / C #), тогда как именно обрабатываются события и все?

1 Ответ

3 голосов
/ 16 октября 2008

Компилятор VB или C # компилирует страницы ASPX и классы в App_Code в двоичные библиотеки времени выполнения. Для веб-проектов библиотеки DLL создаются каждый раз, когда вы создаете проект; для веб-сайтов библиотеки DLL создаются во временной папке в папке c: \ Windows. Возможно, это то, что вас смущает - вы не увидите библиотеки DLL для веб-сайтов, пока не выполните шаг «Построение»> «Опубликовать веб-сайт».

Если вы развертываете веб-сайт без предварительной публикации, он работает таинственным образом! Это связано с тем, что процесс ASP.NET неявно вызывает компилятор для создания соответствующих библиотек DLL для каждой страницы ASPX.

Вы можете доказать это поведение, создав виртуальный каталог в окне разработчика над корнем разработки веб-сайта. Затем запустите страницу с http://localhost/yourappname/yourpagename.aspx. Он запускается! Без DLL! Они находятся в папке проекта в папке C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files.

Подробнее о процессе публикации: http://msdn.microsoft.com/en-us/library/1y1404zt(VS.80).aspx

В любом случае после компиляции жизненный цикл ASP.NET запускается и вызывает события по мере их возникновения. Смотрите эти ссылки для получения дополнительной информации об этом процессе:

http://msdn.microsoft.com/en-us/library/ms227435.aspx

http://msdn.microsoft.com/en-us/library/ms178472.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...