.NET StackExchange.Redis 操作redis

news/2024/9/25 10:24:49/

下面是一个简单的示例,展示了如何使用 C# 中的 StackExchange.Redis 库与 Redis 进行交互,包括字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)操作。每个命令都有一个单独的方法来执行相应的 Redis 命令。

首先,你需要在 Visual Studio 中安装 StackExchange.Redis 库。你可以通过 NuGet 包管理器或者在包管理控制台中执行 Install-Package StackExchange.Redis 来完成。

然后,可以使用以下示例代码:

using System;
using StackExchange.Redis;class Program
{static ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("localhost");static void Main(string[] args){TestString();TestHash();TestList();TestSet();TestSortedSet();Console.ReadLine();}static void TestString(){IDatabase db = redis.GetDatabase();string key = "myString";db.StringSet(key, "Hello, Redis!");string value = db.StringGet(key);Console.WriteLine($"String value: {value}");}static void TestHash(){IDatabase db = redis.GetDatabase();string key = "myHash";db.HashSet(key, "name", "John");db.HashSet(key, "age", 30);string name = db.HashGet(key, "name");int age = (int)db.HashGet(key, "age");Console.WriteLine($"Hash name: {name}, age: {age}");}static void TestList(){IDatabase db = redis.GetDatabase();string key = "myList";db.ListLeftPush(key, "Apple");db.ListLeftPush(key, "Banana");db.ListLeftPush(key, "Orange");var values = db.ListRange(key);foreach (var value in values){Console.WriteLine($"List item: {value}");}}static void TestSet(){IDatabase db = redis.GetDatabase();string key = "mySet";db.SetAdd(key, "Apple");db.SetAdd(key, "Banana");db.SetAdd(key, "Orange");var values = db.SetMembers(key);foreach (var value in values){Console.WriteLine($"Set member: {value}");}}static void TestSortedSet(){IDatabase db = redis.GetDatabase();string key = "mySortedSet";db.SortedSetAdd(key, "Apple", 1);db.SortedSetAdd(key, "Banana", 2);db.SortedSetAdd(key, "Orange", 3);var values = db.SortedSetRangeByRank(key);foreach (var value in values){Console.WriteLine($"Sorted set member: {value}");}}
}

这个示例演示了如何连接到本地 Redis 实例,并分别使用字符串、哈希、列表、集合和有序集合的命令进行交互。每个命令都被封装在一个单独的方法中,使代码更清晰易读。


http://www.ppmy.cn/news/1429086.html

相关文章

overflow(溢出)4个属性值,水平/垂直溢出,文字超出显示省略号的详解

你好,我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃-大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端工具”,可获取 Web 开发工具合…

【八股】Spring Boot

SpringBoot是如何实现自动装配的? 首先,SpringBoot的核心注解SpringBootApplication里面包含了三个注解,SpringBootConfigurationEnableAutoConfigurationComponentScan,其中EnableAutoConfiguration是实现自动装配的注解&#x…

深入理解计算机网络:从基本原理到实践应用

前言: 计算机网络是现代信息技术的基石,它连接了全球数以亿计的设备,使得信息传输和资源共享成为可能。本文将从计算机网络的基本原理出发,深入探讨其关键技术,并分享一些实践应用的经验。 一、计算机网络的基本原理 1…

【埋点探针】微信小程序SDK安装

一、下载微信小程序SDK埋点代码 选择Wechat,复制sdk代码 在项目根目录下,创建sdk文件,webfunny.event.js 二、在app.js文件中,引入埋点SDK代码 首先引入sdk代码 require("./webfunny.event.js")引入兼容代码&#x…

C# Solidworks二次开发:访问平面、曲面相关API详解

大家好,今天要介绍的是关于平面、曲面相关的API。 下面是相关的API: (1)第一个为ISurfacePlanarFeatureData,这个API的含义为允许访问平面表面特征,下面是官方的具体解释: 下面是官方使用的例子&#xff…

【Linux】NFS网络文件系统搭建

一、服务端配置 #软件包安装 [roothadoop01 ~]# yum install rpcbind nfs-utils.x86_64 -y [roothadoop01 ~]# mkdir /share#配置文件修改 #格式为 共享资源路径 [主机地址] [选项] # [roothadoop01 ~]# vi /etc/exports /share 192.168.10.0/24(rw,sync,no_root_squash) #…

测试大语言模型在嵌入式设备部署的可能性——模型TinyLlama-1.1B-Chat-v1.0

测试模型TinyLlama-1.1B-Chat-v1.0修改推理参数,观察参数变化与推理时间变化之间的关系。 本地环境: 处理器 Intel Core™ i5-8400 CPU 2.80GHz 2.80 GHz 机带 RAM 16.0 GB (15.9 GB 可用) 集显 Intel UHD Graphics 630 独显 NVIDIA GeForce GTX 1050 主…

解决vue报错:Component name “index“ should always be multi-word

提示组件名应该使用驼峰命名法,忽略提示,使得编译器不再报错, 编辑.eslintrc.js文件 添加规则: rules: {no-console: process.env.NODE_ENV production ? warn : off,no-debugger: process.env.NODE_ENV production ? warn : off,spac…