Global.asax не загружается для предварительно скомпилированного сайта asp.net

StackOverflow https://stackoverflow.com/questions/1632636

  •  06-07-2019
  •  | 
  •  

Вопрос

Я использовал Visual Studio 2008 для публикации своего сайта asp.net. Когда я открывал веб-сайт на сервере (сервер Windows 2008), я заметил, что код в global.asax не работает. Мое тело Global.asax похоже на:

<%@ Application Language="C#" %>
<script runat="server">
    protected void Application_Start()
    {
        // Initialize some site settings like a task scheduler
    }

    protected void Application_End(object sender, EventArgs e)
    {
        // Perform some clean up code
    }
</script>

В папке bin скомпилированных веб-сайтов есть файл App_global.asax.dll, но это не помогает.

Есть ли параметр конфигурации, который мне не хватает? Удаление App_global.asax.dll и использование исходного global.asax с предварительно скомпилированным веб-сайтом работает нормально.

Это было полезно?

Решение

Единственный ответ, который я нашел, - включить global.asax (с логикой) в скомпилированную папку вывода.

Другие советы

У меня была похожая проблема, и мне удалось ее решить, удалив файл PrecompiledApp.config из корневой папки веб-сайта на нашем сервере разработки.

Я думаю, что это могло быть передано на сервер при публикации из Visual Studio.

В этом посте есть несколько решений , которые устраняют проблему для некоторых людей. но не все. Вы можете попробовать их и посмотреть, работает ли это для вас.

Убедитесь, что у вас есть все необходимые библиотеки DLL, включенные в ваш проект, это также хорошая идея, чтобы скомпилировать ваши проекты, сравнить версии DLL, и, если они не совпадают, вручную заменить их в каждой папке, чтобы вы могли уверен, что вы используете правильную версию Dlls.

Это сработало для меня.

У меня была похожая проблема после публикации скомпилированного проекта ASP.NET в .NET 4 и IIS 7.0. Глобальное приложение не запускалось при запуске приложения, затем после помещения PrecompiledApp.config на сервер моя проблема была решена и скомпилированный файл Global.asax с именем App_global.asax.dll вышел на передний план жизненного цикла и работает.

Я думаю, что переименование Application_Start () в Application_OnStart () решит проблему.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top