小编Car*_* J.的帖子

C#ASP.NET:当没有HttpContext.Current可用时,如何访问缓存(为空)?

Application_End()Global.aspx 期间,HttpContext.Current为null.我仍然希望能够访问缓存 - 它在内存中,所以想看看我是否可以以某种方式引用它来将位保存到磁盘.

问题 - 当HttpContext.Current为空时,有没有办法以某种方式在内存中引用缓存?

也许我可以创建一个全局静态变量来存储指向缓存的指针,我可以在HTTP请求上更新(伪:) "static <pointer X>" = HttpRequest.Current并通过Application_End()中的指针检索对缓存的引用?

当没有Http请求时,是否有更好的方法来访问内存中的Cache?

c# asp.net caching httprequest global-asax

12
推荐指数
3
解决办法
1万
查看次数

使用一个SQL表进行三向连接

假设有一个MSSQL表UserPost代表用户发布的内容,包含以下字段:

ID | dateAdded | parentPostID | postBody

在系统中的用户可以创建一个请求,接收响应,然后其他用户可以评论回应.即,Request <= 1:many => Reponse <= 1:many => Comment(想想StackOverlow的问题>答案>评论模型).

所有用户帖子(请求,响应评论)都由UserPost行表示,其中Request有parentPostID = null;; 响应' parentPostID是请求的ID,而注释parentPostID是响应的ID.

我需要以简单的方式输出所有内容:

Request 1
- Response A
-- Comment (i)
-- Comment (ii)
- Response B
-- Comment (i)
Request 2
...
Run Code Online (Sandbox Code Playgroud)

问题:哪种SQL语句以最有用的方式返回所需信息?

我正在努力将(UserPosts)之间的三向连接写为Requests [join](UserPosts)作为Response [join](UsersPosts)作为Comments但不确定这是最简单的方法.

额外奖励:使用C#Linq可以做到这一点吗?

c# sql linq join sql-server-2008

3
推荐指数
1
解决办法
408
查看次数

标签 统计

c# ×2

asp.net ×1

caching ×1

global-asax ×1

httprequest ×1

join ×1

linq ×1

sql ×1

sql-server-2008 ×1