【问题标题】:Get value from session or request?从会话或请求中获取价值?
【发布时间】:2009-07-02 18:16:59
【问题描述】:

目前我有代码

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

在某些情况下,我将标题移动到会话数据中,然后重定向页面或执行我需要的任何操作。现在这不起作用。有什么东西可以用来从请求或会话中提取数据吗?

【问题讨论】:

    标签: c# asp.net session cookies postdata


    【解决方案1】:

    怎么样:

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

    ?? 是 null-coalescing 运算符,并获取第一个非 null 结果(有一个时短路),如果没有非 null 结果,则为 null。

    使用 C# 3.0 还可以添加扩展方法:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-26
      • 1970-01-01
      相关资源
      最近更新 更多