我是NO-SQL概念的新手,我想在Asp.net网络应用程序中开始使用redis。通过我的搜索,我找不到使用Redis和Asp.net的好例子,并为初学者解释redis的详细信息,我真的很感激。
答案 0 :(得分:1)
答案 1 :(得分:0)
如果您要在Asp.net应用程序中使用Redis,则有两种使用Redis的方法:
1。使用Redis并将DistributedRedisCache添加到启动类中。
2。使用第三方库,例如 serviceStack.Redis或 StackExchange.Redis !
我告诉了您一系列的一般说明,现在是时候使用Redis进行编码了!!!
第一种方法:
首先,应在应用程序中安装以下软件包:
安装Microsoft.Extensions.Caching.Redis.Core包
之后,将以下部分添加到您的appsetting.json文件中:
"redis": {
"host": "127.0.0.1",
"port": 6379,
"name": "localhost"
}
现在是时候将已安装的软件包作为服务添加到starup中了:
services.AddDistributedRedisCache(options =>
{
options.InstanceName = Configuration.GetValue<string>("redis:name");
options.Configuration = Configuration.GetValue<string>("redis:host");
});
现在您可以在应用程序中使用Redis了:
public class HomeController : Controller
{
private readonly IDistributedCache _cache;
public HomeController(IDistributedCache cache)
{
_cache = cache;
}
public IActionResult Index()
{
string data = "";
if (string.IsNullOrEmpty(_cache.GetString("Student")))
{
_cache.SetString("student", "hamidhasani");
}
else
{
data = _cache.GetString("student");
}
ViewData["DistCache"] = data;
return View(data);
}
}
第二种方法:
在这种方法中,应该安装一个库,在这里我想安装服务栈,所以让我们将其添加到我们的项目中:
安装软件包serviceStack.Redis
在此之后是时候使用它了。我在这里公开了它的用法:
public class HomeController : Controller
{
private IRedisClient _redisClient;
public HomeController()
{
_redisClient = new RedisClient();
}
public IActionResult Index()
{
Person person = null;
var NewPerson = new Person()
{
Id = 1,
Name = "hamid",
LastName = "hasani"
};
var rc = _redisClient.As<Person>();
if (rc.GetById(NewPerson.Id) == null)
{
person= rc.Store(person);
}
else
{
person= rc.GetById(NewPerson.Id);
}
return View(person);
}
}