Frage

Ich habe Visual Studio 2008 auf meine asp.net Website zu veröffentlichen. Wenn ich die Website auf dem Server (Windows 2008 Server) bringen, bemerkte ich, dass der Code in global.asax nicht ausgeführt wurde. Meine Global.asax Körper ähnelt:

<%@ 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>

Es gibt eine App_global.asax.dll in den kompilierten Websites Binärordner, aber das scheint nicht zu helfen.

Gibt es eine Konfigurationsoption, die ich vermisst habe? Das Entfernen der App_global.asax.dll und mit dem ursprünglichen global.asax mit der vorkompilierte Website funktioniert gut.

War es hilfreich?

Lösung

Die einzige Antwort, die ich gefunden habe, ist global.asax (mit Logik) in der kompilierten Ausgabeordner enthalten.

Andere Tipps

Ich hatte ein ähnliches Problem und konnte es lösen, indem Entfernen der PreCompiledApp.config Datei aus der Stammordner der Website auf unseren Entwicklungsserver.

Ich denke, dass diese auf den Server übertragen wurden, als von Visual Studio zu veröffentlichen.

Es gibt einige Lösungen in diesen Beitrag , die das Problem für einige Leute festlegt, aber nicht alles. Man könnte sie versuchen und sehen, ob es für Sie arbeitet.

Stellen Sie sicher, dass Sie alle necessaries haben DLLs in Ihrem Projekt enthalten ist, es ist auch eine gute Idee, um Ihre Projekte zu kompilieren, dlls Versionen vergleichen, und wenn diese nicht übereinstimmen, sie manuell in jeden Ordner ersetzen, so dass Sie sein können Sie sicher, dass die richtige Version Dlls ausgeführt werden.

Das funktioniert für mich.

Ich hatte das ähnliche Problem nach vorkompilierte ASP.NET-Projekt unter .NET 4 und IIS 7.0 zu veröffentlichen. Globale Anwendung wurde nicht bei Programmstart ausgeführt wird, dann nach PreCompiledApp.config zum Server mein Problem Platzierung wurde gelöst und Global.asax-Datei kompiliert namens App_global.asax.dll kam zu dem vor Lebenszyklus und ausgeführt wird.

Ich denke, die Umbenennung Application_Start (), um Application_OnStart () das Problem lösen würde.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top