C# 使用ASP.NET Core v2在内存中保存值
使用Razorpage,我在PageLoad上使用包含键和值的C列表从SQL查询填充了5个选择框 保存表单时,我需要再次掌握这些列表中的键和值 因此,为了防止更多的SQL查询,我希望在加载时将列表键、值对存储在内存中,以便以后可以使用C访问它 我该怎么做 我正在使用ASP.NET核心v2和C 谢谢 托马斯你可以使用IMemoryCache 在Startup.cs中C# 使用ASP.NET Core v2在内存中保存值,c#,asp.net,entity-framework,asp.net-core-2.0,razor-pages,C#,Asp.net,Entity Framework,Asp.net Core 2.0,Razor Pages,使用Razorpage,我在PageLoad上使用包含键和值的C列表从SQL查询填充了5个选择框 保存表单时,我需要再次掌握这些列表中的键和值 因此,为了防止更多的SQL查询,我希望在加载时将列表键、值对存储在内存中,以便以后可以使用C访问它 我该怎么做 我正在使用ASP.NET核心v2和C 谢谢 托马斯你可以使用IMemoryCache 在Startup.cs中 public class Startup { public void ConfigureServices(IServiceC
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddMemoryCache();
}
}
在控制器中
public class HomeController : Controller
{
private IMemoryCache _cache;
public HomeController(IMemoryCache memoryCache)
{
_cache = memoryCache;
}
}
然后去拿
var cacheEntry = _cache.GetOrCreate("your-cache-key", entry =>
{
entry.SlidingExpiration = TimeSpan.FromMinutes(10);
// return your key/value list;
return new Dictionary<string,string>();
}
有关更多信息,请参见。您可以使用IMemoryCache
在Startup.cs中
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddMemoryCache();
}
}
在控制器中
public class HomeController : Controller
{
private IMemoryCache _cache;
public HomeController(IMemoryCache memoryCache)
{
_cache = memoryCache;
}
}
然后去拿
var cacheEntry = _cache.GetOrCreate("your-cache-key", entry =>
{
entry.SlidingExpiration = TimeSpan.FromMinutes(10);
// return your key/value list;
return new Dictionary<string,string>();
}
有关更多信息,请参见这些值是基于会话的还是对每个人都相同?如果每个人的值都相同,则可以将其保存在MemoryCache缓存项中。是的,所有用户的值都相同这些值是基于会话的还是每个人的值都相同?如果它们对每个人都相同,您可以将它们保存在MemoryCache缓存项中。是的,它们对所有用户都相同