草庐IT

dotnet缓存

全部标签

Mybatis 之 二级缓存

1、二级缓存        二级缓存的原理和一级缓存原理一样,第一次查询,会将数据放入缓存中,然后第二次查询则会直接去缓存中取。但是一级缓存是基于sqlSession的,而二级缓存是基于mapper文件的namespace的,也就是说多个sqlSession可以共享一个mapper中的二级缓存区域,并且如果两个mapper的namespace相同,即使是两个mapper,那么这两个mapper中执行sql查询到的数据也将存在相同的二级缓存区域中。如何使用二级缓存1.1、开启二级缓存        和一级缓存默认开启不一样,二级缓存需要我们手动开启首先在全局配置文件sqlMapConfig.xm

c# - .NET Core,未能生成 dotnet --info

当我在cmd中键入dotnet--info时,整个屏幕都被Failedtoleavebreadcrumb覆盖什么会导致这种行为?在谷歌上搜索但似乎我是唯一有这个问题的人。最近,当我尝试使用VisualStudioCode时,我安装了一个c#扩展并打开了我的.cs文件,我收到了这条消息UpdatingC#dependencies...Platform:win32,x86_64Downloadingpackage'OmniSharpforWindows(.NET4.6/x64)'(21928KB)....................Done!Downloadingpackage'.NE

c# - 如何在mvc中部分缓存用户详细信息

在每个页面的页眉中,我都显示了用户名和用户积分。这是从部分中提取的(从数据库中获取点)。我怎样才能缓存这个部分,这样我就可以避免在每个页面上检查数据库中的用户点数,并且在24小时后它可以再次查看(缓存过期)。此外,如果用户注销并且其他人登录,它将显示新的用户名和积分(不是以前缓存的)。 最佳答案 这是特定于用户的,因此我会将其存储在持久性cookie中。因此,当用户进行身份验证时,您可以查询数据库以获取所需的信息并发出一个将在24小时后过期的持久性cookie。然后在部分中,您将检查cookie是否存在并从此cookie中获取必要的

c# - 如何配置 Visual Studio Code 以从适用于 Linux 的 Windows 子系统 (WSL) 运行/调试 .NET (dotnet) Core?

我在WindowsSubsystemforLinux中安装了.NETCore2.2(WSL)并创建了一个新项目。我还为VisualStudioCode安装了C#扩展,语法突出显示和IntelliSense似乎可以正常工作。但是,当我尝试使用调试器时,一切都停止了。这是我尝试对其进行配置的分步操作。这是我的launch.json文件:{//UseIntelliSensetolearnaboutpossibleattributes.//Hovertoviewdescriptionsofexistingattributes.//Formoreinformation,visit:https:/

c# - 在 winforms 应用程序中缓存 GDI+ 对象 : is it worth it and how to do it right?

对于我的一些winforms应用程序,我需要创建一大堆GDI+对象(画笔、笔、字体等)并一遍又一遍地使用它们。我创建了一个ghetto缓存单例来完成我需要的,但是代码味道太重了......publicsealedclassGraphicsPalette{publicstaticreadonlyGraphicsPaletteInstance=newGraphicsPalette();staticGraphicsPalette(){}privateDictionarysolidBrushes;//multithreadingprivateobjectbrushLock;privateGra

c# - 使用 dotnet cli 无法恢复 Mvc CodeAnalysis 依赖项

我在恢复ASP.NET5/ASP.NETCore1.0的依赖项时遇到错误。看起来Microsoft.AspNet.Mvc的几个依赖项(即Microsoft.CodeAnalysis.CSharp/.Common)是修复了看似过时的包。对此的要求是使用dotnetcli工具并同时针对.NETVanilla和.NETCore。有没有办法让Mvc引用CodeAnalysis的核心兼容版本?在VisualStudio2015(v14.0.24729.00更新1)中重现的步骤:文件>新建>项目>Web>ASP.NETWeb应用程序API.NET5模板>WebAPI打开PM,运行命令dotnetr

c# - 预留实例模式下 Azure 网站的新 Azure 分布式缓存

WindowsAzure(6月7日宣布)的其他重要新功能似乎缺少的是能够在预留实例模式下为网站集群的预留实例定义分布式缓存。到目前为止,似乎只能为独立的webroles或worker角色创建分布式缓存。有谁知道解决方法或知道这是否即将发生?我问这个问题的原因是因为它迫使我创建一个专门用于缓存的worker角色,而且由于我受到成本的限制,我负担不起另外三个用于缓存的实例。这给我留下了一个不容错的缓存服务,而实际上我托管网站的三个Webrole将是a)容错和b)可以为分布式缓存贡献足够的内存,这样我就可以在没有单点的情况下获得更大的缓存与单个缓存工作角色一样失败。

c# - 在 .Net 中使用 ObjectCache 缓存对象并过期

我陷入了一个场景。我的代码如下:更新:它与如何使用数据缓存无关,我已经在使用它及其工作,它是关于扩展它的,因此该方法不会在到期时间和从外部源获取新数据之间进行调用object=(string)this.GetDataFromCache(cache,cacheKey);if(String.IsNullOrEmpty(object)){//getthedata.Ittakes100msSetDataIntoCache(cache,cacheKey,object,DateTime.Now.AddMilliseconds(500));}因此,如果项目过期,用户会调用缓存并从中获取数据,并从服务

c# - 将 lambda 表达式转换为用于缓存的唯一键

我查看了与此类似的其他问题,但找不到任何可行的答案。我一直在使用以下代码生成唯一键,以便将我的linq查询结果存储到缓存中。stringkey=((LambdaExpression)expression).Body.ToString();foreach(ParameterExpressionparaminexpression.Parameters){stringname=param.Name;stringtypeName=param.Type.Name;key=key.Replace(name+".",typeName+".");}returnkey;它似乎适用于包含整数或bool值的

c# - 空合并运算符是否在c#中缓存结果

我知道(myValue??newSomeClass())类似于(myValue==null?newSomeClass():myValue)但出于好奇,当我调用函数时是否有任何性能优势,比如(getResult()??newSomeClass())。getResult()会被执行两次吗?这似乎不直观,因为我只指定了一次方法调用。 最佳答案 好吧,如果您所说的“缓存”是指将其存储在一个临时变量中,那么是的。这个结构:varresult=(getResult()??newSomeClass());可以认为等价于此:var=getResul