2011-01-05 2 views

Répondre

1

Vous pouvez toujours obtenir ces choses par

System.Web.HttpContext.Current.Request 

System.Web.HttpContext.Current.Response 

HttpContext Class et Current Property

encapsule toutes les informations spécifiques HTTP au sujet d'une requête HTTP individuelle.


Et pour gérer une valeur de cookie tout au long de votre site, je vous suggère soit créer une classe BasePage que toutes vos pages héritées et faire les contrôles là:

public class BasePage : System.Web.UI.Page 
{ 
    protected override void OnPreRender(EventArgs e) 
    { 
     UpdateCookie(); 
     base.OnPreRender(e); 
    } 
} 

faire la même chose votre MasterPage:

public class SiteMasterPage : MasterPage 
{ 
    protected override void OnPreRender(EventArgs e) 
    { 
     UpdateCookie(); 
     base.OnPreRender(e); 
    } 
} 

public static void UpdateCookie() 
{ 
    HttpContext context = System.Web.HttpContext.Current; 
    HttpCookie cookie = context.Response.Cookies.Get("Update") 
     ?? new HttpCookie("Update");   

    int value = 0; 
    int.TryParse(cookie.Value, out value); 
    value++; 

    cookie.Expires = DateTime.Now.AddDays(30); 
    cookie.Value = value.ToString(); 
    context.Response.Cookies.Set(cookie); 
} 
+0

Merci! Quel est l'équivalent d'onPreRender pour les services WCF? Certains Javascript vont appeler certains services et je vais valider le contenu des cookies avant chaque appel. – LamonteCristo

1

utilisation HttpContext.Current.Request et HttpContext.Current.Response

0

Utilisez l'espace de noms complet:

System.Web.HttpContext.Current.Request 

System.Web.HttpContext.Current.Response 

- ou -

using System.Web.HttpContext.Current; 

alors vous devriez être en mesure pour accéder à la demande/réponse tout au long de votre cours.

+0

en utilisant System.Web.HttpContext.Current; ne fonctionne pas, AFAIK. – Greg

0

Il y a plusieurs façons de le faire. D'autres ont mentionné faire ceci avec System.Web.HttpContext.Current, mais je penserais (devinant de ce que je pense que votre intention est) que faire ceci sur une méthode qui fonctionne sur la charge sur vos pages principales est une meilleure idée.

Questions connexes