是否有任何工具可用于查看HttpRunTime缓存中的缓存数据..?我们有一个Asp.Net应用程序,它正在将数据缓存到HttpRuntime缓存中。给定的默认值是60秒,但后来更改为5分钟。但是感觉缓存的数据在5分钟之前就刷新了。不知道下面发生了什么。是否有任何可用的工具或我们如何查看缓存在HttpRunTime缓存中的数据……以及过期时间……?以下代码用于将项目添加到缓存。publicstaticvoidAdd(stringpName,objectpValue){intcacheExpiry=int.TryParse(System.Configuration.Configurati
我正在编写一个ASP.NET5MVC6(Core)应用程序。现在我需要在session缓存(ISession)中存储(设置和获取)一个对象。您可能知道,ISession的Set方法接受一个byte-array和Get-方法返回一个。在非核心应用程序中,我会使用BinaryFormatter来转换我的对象。但是我怎样才能在核心应用程序中做到这一点呢? 最佳答案 我会将对象序列化为JSON,并使用ISession上的扩展方法将它们保存为string。//Savevarkey="my-key";varstr=JsonConvert.Ser
这是我发起session的方式protectedvoidSession_Start(objectsender,EventArgse){HttpContext.Current.Session["CustomSessionId"]=Guid.NewGuid();}在我的类库下的解决方案中,我正在尝试访问它并获得空异常:stringsess=HttpContext.Current.Session["CustomSessionId"];这是我在web.config和app.config中的配置(在我的库中)(应用程序配置) 最佳答案 根据您
期间Application_End()在Global.aspx中,HttpContext.Current为空。我仍然希望能够访问缓存-它在内存中,所以想看看我是否可以以某种方式引用它以将位保存到磁盘。问题-当HttpContext.Current为null时,有没有办法以某种方式引用内存中的缓存?也许我可以创建一个全局静态变量来存储指向缓存的指针,我可以根据HTTP请求更新它(伪:"static"=HttpRequest.Current)并通过Application_End()中的该指针检索对缓存的引用?有没有更好的方法在没有HttpRequest的情况下访问内存中的Cache?
我知道通常有一个简单的解决方案,即在添加引用中引用dll。但是我已经添加了引用并且system.runtime.caching出现在我的引用列表中但错误仍然显示。错误在运行时显示在浏览器中,因此它确实可以编译。我已经删除并重新添加了引用,但仍然没有成功。我已经重新启动VS2012并重新启动。VisualStudio2012.net框架4.5屏幕截图: 最佳答案 我有同样的问题,我发现我必须手动添加:到我的web.config文件。 关于c#-命名空间'Caching'中不存在类型或命名空
我正在使用新的.NET4.0缓存命名空间:System.Runtime.Caching。现在,我只是在对新的API进行一些原型(prototype)设计/摆弄,以便找出最适合实际应用的东西。与此一致,我正在尝试创建一个页面(ASP.NETMVC),该页面基本上会转储缓存中的所有内容,尤其是以下信息:缓存键缓存对象缓存策略(过期日期等)缓存依赖项(如果有的话)但是,除了键/对象,我似乎什么也得不到。这是我目前正在使用的代码:publicActionResultIndex(){varcache=MemoryCache.Default;//icangetthelistofcachekeysl
所以HttpContext.Request如果在全局启动内调用则抛出publicHttpRequestget_Request(){if(this.HideRequestResponse){thrownewHttpException(SR.GetString("Request_not_available"));}returnthis._request;}这实际上是有记录的ASP.NETwillthrowanexceptionifyoutrytousethispropertywhentheHttpRequestobjectisnotavailable.Forexample,thiswoul
当Server.Transfer();发生时,HttpContext.Current.Items是否丢失?如果是这样,我将信息发送到另一个页面的最佳方式是什么不通过session? 最佳答案 是的,上下文仍然有效。如果您使用Response.Redirect(),它将变得无效或中断。参见文章TheHttpContextItemsCollection 关于c#-HttpContext.Current.Items的范围,我们在StackOverflow上找到一个类似的问题:
是否可以获取HttpRuntime.Cache对象的到期DateTime?如果是这样,最好的方法是什么? 最佳答案 我刚刚浏览了反射器中的System.Web.Caching.Cache。似乎涉及到期日期的所有内容都标记为内部。我发现可以公开访问它的唯一地方是通过Cache.Add和Cache.Insert方法。所以看起来你运气不好,除非你想进行反射(reflection),我不建议这样做,除非你真的需要那个日期。但如果您无论如何都想这样做,那么这里有一些代码可以解决问题:privateDateTimeGetCacheUtcExpi
我正在使用C#4.0,我需要对服务进行单元测试。服务内部的函数返回一个类似于我称为预期的变量的路径,这是我期望返回的路径。但是当我运行这个测试时,我得到了HttpContext.Current为NULL的错误。我该怎么做才能解决这个问题,以便可以运行测试?[TestMethod]publicvoidGetPathTest(){varexpected=System.IO.Path.GetFullPath(HttpContext.Current.Server.MapPath("~/Certificates/"));varpath=_mockService.Setup(o=>o.GetPat