2016-02-17 3 views
5

Я использую StackExchange.Redis в своем приложении для хранения ключей/значений. Мне нужно очистить весь db, который использует Redis. Я нашел способ через команду How do I delete everything in Redis? , но как я могу это сделать с помощью StackExchange.Redis? Я не смог найти какой-либо метод для этого?Flush/Empty db in StackExchange.Redis

Я искал Empty, RemoveAll и т. Д. На объекте IDatabase и ничего не нашел.

ответ

10

Самый простой способ заключается в использовании метода FlushDatabase или FlushDatabaseAsync из IServer

ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("localhost"); 
var server = redis.GetServer("localhost"); 
server.FlushDatabase(); 
+0

вы отлично !!! – Raghav

+1

Есть ли способ сделать это с помощью некоторого инструмента командной строки? Мне бы очень хотелось писать код, чтобы очистить кеш во время разработки ... –

+0

уверен, что вы можете сделать это через redis-cli.exe с аргументом «flushall», чтобы очистить все данные в redis или вы можете " flushdb ", чтобы очистить выбранный db. например если вам нужно сбросить db 1, вы выполните следующие команды: «выберите 1», чтобы выбрать db с индексом 1, «flushdb», чтобы очистить только выбранный db. обратите внимание, что индекс db по умолчанию равен 0 –