參加活動的小筆記-關於 ASP.NET Core Caching 使用 IMemoryCache

這是參加twMVC的活動聽完講師分享的小筆記

https://docs.com/is-twMVC/3539/twmvc-26-asp-net-caching

關於 ASP.NET Core Caching 使用 IMemoryCache 的部分

活動結束後自己開了一個專案動手試試看並做個記錄

要新建專案時要選擇.net Core 這個項目

然後開NuGet 在這邊搜尋Caching.Memory
或是按照簡報中所述的方式在套件管理主控台執行這行 Install-Package Microsoft.Extensions.Caching.Memory

接著在Startup.cs的ConfigureServices中加入services.AddMemoryCache()

public void ConfigureServices(IServiceCollection services)
{
	// Add framework services.
	services.AddApplicationInsightsTelemetry(Configuration);

	services.AddMvc();
	//加入MemoryCache
	services.AddMemoryCache();
}

最後是Controller的部分

public class HomeController : Controller
{
	private  IMemoryCache _memoryCache;
	public HomeController(IMemoryCache memoryCache)
	{
		_memoryCache = memoryCache;
	}
	public IActionResult Index()
	{
		ViewData["CacheTime"] = _memoryCache.GetOrCreate("CacheTime", x => {
			x.SlidingExpiration = TimeSpan.FromSeconds(60);
			return DateTime.Now;
		});

		return View();
	}
}

範例檔:

https://bitbucket.org/yu_allen/netcoreimemorycacheexersice/src