2009-07-02 7 views
1

actuellement i ont un code qui neObtenez la valeur de la session ou de la demande?

var req = HttpContext.Current.Request; 
if(!isNull(req["title"], req["desc"], req["tags"])) { doSomthing();} 

sur certains cas, je déplacer le titre dans les données de session redirigent ensuite la page ou faire tout ce que j'ai besoin. Maintenant cela ne fonctionne pas. Y a-t-il quelque chose que je peux utiliser pour extraire des données d'une demande ou d'une session?

Répondre

1

Que diriez-vous:

var ctx = HttpContext.Current; 
object val = ctx.Request[key] ?? ctx.Session[key]; 

?? est l'opérateur nul coalescent, et prend le premier résultat non nul (court-circuit quand il en a un), ou null s'il n'y a pas de résultats non nuls .

avec C# 3.0 Vous pouvez également ajouter une méthode d'extension:

static object GetFromAny(this HttpContext ctx, string key) { 
    return ctx.Request[key] ?? ctx.Session[key]; 
} 
Questions connexes