ASP.NET - Javascript délai d'Alerte basé sur sessionState délai d'attente dans le web.config
Problème: je cherche à créer un temps d'avertissement de message sur un asp.net page avec un code c# derrière en fonction de mon webconfig sessionState Attribut TimeOut.
Code sur le web.config:
<configuration>
<system.web>
<sessionState timeout="20"></sessionState>
</system.web>
</configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="EchoSignDocumentService10HttpBinding" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="6553600" maxBufferPoolSize="524288" maxReceivedMessageSize="6553600" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="1638400" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="Transport">
<transport clientCredentialType="None" proxyCredentialType="None" realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
<binding name="EchoSignDocumentService10HttpBinding1" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None" realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>
</system.serviceModel>
OriginalL'auteur Brian McCarthy | 2011-08-11
Vous devez vous connecter pour publier un commentaire.
Pseudo-code:
setTimeout
passer le délai d'attente (20 * 60))Exemple de code:
Bien sûr, vous pouvez améliorer le côté client (plutôt que de montrer une alerte) par l'affichage de l'avertissement de fenêtres pop-up ou même une fenêtre de confirmation que vous pouvez ensuite utiliser pour renouveler la session.
OriginalL'auteur Mrchief
Je n'étais pas en mesure d'obtenir FishbasketGordo code du travail parce que l'appel de la Méthode Web gardé en passant la valeur Booléenne "false" comme le onsuccess méthode. Après beaucoup de recherches, j'ai apporté les modifications suivantes.
OriginalL'auteur user1161391
D'essayer cette solution (nécessite un gestionnaire de script):
OriginalL'auteur James Johnson
J'ai fait cela auparavant par la création d'une méthode web dans mon fichier code-behind qui permet de vérifier le délai d'attente. Votre fonction Javascript obtenir le délai d'expiration de l'information via AJAX et l'affichage d'un avertissement selon.
Exemple
C'est la méthode web dans mon code-behind:
Et c'est mon Javascript:
Donc, c'est assez rudimentaire. Toutes les 30 secondes, ma fonction Javascript envoie une requête AJAX de mon site web à l'aide de la méthode ASP.NET's PageMethods objet. Il vérifie la valeur de retour de true à la fonction de rappel, ce qui indique qu'un délai d'attente a eu lieu, et prend les mesures appropriées.
J'ai ajouté un exemple de ma réponse, si vous avez soin de prendre un coup d'oeil.
Merci pour l'exemple & la réponse!
OriginalL'auteur FishBasketGordo
Essayer Cette Seesion D'Alerte À L'Aide De Jquery à partir de mon blog:
OriginalL'auteur Sumesh Parakkat
J'ai créé un délai d'attente de message d'avertissement askign à l'utilisateur d'enregistrer les données avant la fin de la session dans x nombre de minutes restantes en utilisant le code javascript suivant sur mon asp.net edit.page aspx:
Je réglage de la fréquence de la message d'avertissement à toutes les 20 minutes et il était facile de changer en mettant comme une variable sous les paramètres de l'application, qui est également accessible dans le site web.la config dans et défini comme une clé (SessionWarning) w/une valeur de 20 (soit 20 minutes).
Voici le code que j'ai utilisé sur mon site web.fichier de configuration:
OriginalL'auteur Brian McCarthy