2009-05-08 14 views

Respuesta

16

Creo que puede leerlo desde los métodos de clases estáticas de FormsAuthentication, que sería mejor que hacerlo leyendo el archivo web.config directamente ya que puede heredar configuraciones de autenticación de un nivel superior web.config.

var authTicket = new FormsAuthenticationTicket(user.EmailAddress, true, (int)FormsAuthentication.Timeout.TotalMinutes); 
+3

Esta es la mejor respuesta, pero la propiedad Timeout solo está disponible en el Clase estática FormsAuthentication en .Net 4.0 y superior. – ChrisW

4
Configuration conn = WebConfigurationManager.OpenWebConfiguration(""); 

      AuthenticationSection section = (AuthenticationSection)conn.SectionGroups.Get("system.web").Sections.Get("authentication"); 



      long cookieExpires = System.Convert.ToInt64(section.Forms.Timeout.TotalMinutes); 
+0

Para obtener la ruta Web.Config de su proyecto actual, escriba 'Request.ApplicationPath' dentro de' OpenWebConfiguration ("") ' – Rahul

5

Puede acceder valor del web.config timeout en:

FormsAuthentication.Timeout.TotalMinutes

No sé desde cuando está disponible, estoy usando .NET 4.5.

0

Este Código le dará timeout en minutos desde la sección AuthenticationSection presente en el archivo Web.config de su proyecto actual,

Configuration conn = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); 
AuthenticationSection section = (AuthenticationSection)conn.SectionGroups.Get("system.web").Sections.Get("authentication"); 
FormsAuthenticationConfiguration currentForms = section.Forms; 
int timeout = currentForms.Timeout.Minutes; 
txtAppSessionTimeout.Text = timeout.ToString(); 

favor marca como correcto si consideran que esta respuesta es correcta

1

Puede acceda desde su Javascript usando lo siguiente:

var expireTime = <%= FormsAuthentication.Timeout.TotalMinutes %>; 
Cuestiones relacionadas