Verfügbarkeit des Anwendungspools in c # abrufen

7

Gibt es eine Möglichkeit, festzustellen, wie lange ein Anwendungspool (in IIS7) abgelaufen ist (Zeit seit dem Start oder letzten Neustart) in c #?

?     
JPero 23.11.2009, 16:01
quelle

7 Antworten

5

Wirklich dummer Trick: Verwenden Sie in einer Klasse, die alles verwendet, einen Klassenkonstruktor, um sich an Ihre Startzeit zu erinnern, und verwenden Sie eine aspx-Seite, um sie zu erhalten. Vergleichen Sie jetzt mit der aktuellen Zeit.

    
Joshua 23.11.2009, 16:21
quelle
8

DateTime.Now - Process.GetCurrentProcess () .StartTime

Process.GetCurrentProcessInfo () existiert nicht.

    
Eric Humphrey 09.09.2010 22:40
quelle
3

In der ASP.NET-Anwendung können Sie TimeSpan uptime = (DateTime.Now - ProcessInfo.GetCurrentProcessInfo ().StartTime)

ausprobieren     
Gonzalo 23.11.2009 16:07
quelle
2

Wenn Sie feststellen, dass Process.GetCurrentProcessInfo () nicht existiert, wie ein anderer Benutzer erwähnt,

%Vor%

kann für Sie arbeiten.

(Ich wollte dies als Kommentar zu Eric Humphrey's Beitrag hinzufügen, aber ich bin nicht erlaubt)

    
and... break 20.11.2014 19:17
quelle
1

Basierend auf dem oben genannten habe ich eine einfache Klasse wie folgt erstellt ..

%Vor%

und nannte es in Application_Start () in Global.asax.cs wie

%Vor%

Es kann dann überall mit

zugegriffen werden %Vor%     
Original10 25.05.2016 10:04
quelle
0

Wenn Sie einen Anwendungspool neu starten (recyceln) und Ссылка , du solltest es bekommen

    
Ruben Bartelink 23.11.2009 16:11
quelle
0

Einer von zwei Ansätzen existiert, die ich persönlich benutze. Verwenden einer statischen Klasse (wie in der Antwort von @ Original10 gezeigt) oder Verwenden von Application -Variablen.

Ich habe festgestellt, dass die Verwendung von Application Variablen akzeptabel ist, weil ich festgestellt habe, dass Process.GetCurrentProcess() den Neustart von Anwendungen überlebt (zB Änderung von web.config oder bin-Verzeichnis). Ich brauchte etwas, das für die Website auch neu starten würde.

Fügen Sie in Ihrem Global.asax Folgendes zu

hinzu %Vor%

In Ihrem Code, wo Sie es brauchen, könnten Sie etwas tun wie:

%Vor%

Was etwas nach den Vorgaben von

produzieren wird %Vor%

Es gibt keine Überprüfung der Anwendungsvariablen oder Sperren der Anwendung, falls erforderlich. Ich überlasse das dem Benutzer als Übung.

    
Dan Atkinson 16.02.2018 16:32
quelle

Tags und Links