私はRedisを初めて使用し、VS2015とASP.NETCoreアプリ(v 1.0)を使用して、ナゲットパッケージをインストールしました。
Install-Package StackExchange.Redis
ただし、サービスに挿入して構成することはできません。RedisCacheまたは "AddDistributedRedisCache"メソッドはありません。
どうすれば注入して使用できますか?
01.最新のredisを ダウンロード からダウンロードし、services.mscからredisサービスをインストールして開始します
02。project.jsonに2つのライブラリを追加します
"Microsoft.Extensions.Caching.Redis.Core": "1.0.3",
"Microsoft.AspNetCore.Session": "1.1.0",
03.依存性注入を追加します
public void ConfigureServices(IServiceCollection services)
{
services.AddApplicationInsightsTelemetry(Configuration);
services.AddMvc();
//For Redis
services.AddSession();
services.AddDistributedRedisCache(options =>
{
options.InstanceName = "Sample";
options.Configuration = "localhost";
});
}
Configure
メソッドでapp.UseMvc行の先頭を追加します
app.UseSession();
asp.netコアのセッションストレージでredisを使用するには、HomeController.csで次のように使用できます。
public class HomeController : Controller
{
private readonly IDistributedCache _distributedCache;
public HomeController(IDistributedCache distributedCache)
{
_distributedCache = distributedCache;
}
//Use version Redis 3.22
//http://stackoverflow.com/questions/35614066/redissessionstateprovider-err-unknown-command-eval
public IActionResult Index()
{
_distributedCache.SetString("helloFromRedis", "world");
var valueFromRedis = _distributedCache.GetString("helloFromRedis");
return View();
}
}