Ich versuche, die HSCAN Befehl in Redis aufrufen laufen nur die Hash-Felder übereinstimmen, die über C# benötigt werdenkann nicht HSCAN mit Muster von .NET Stack Redis
Dies ist, was der Code wie
siehtvar options = new ConfigurationOptions
{
EndPoints = { "endpoint" },
Proxy = Proxy.Twemproxy
};
twemproxy_new = ConnectionMultiplexer.Connect(options);
db = twemproxy_new.GetDatabase();
Dictionary<string,string> inputDict = new Dictionary<string, string>();
// populate inputDict with "n" fields & values
var cachekey = "my_hash";
db.GetDatabase().HashSet(cachekey, inputDict, CommandFlags.FireAndForget);
db.HashScan(cacheKey, "*9*");
// this is where it fails with the exception
// Command is not available on your server: HSCAN
Aber wenn ich die HSCAN Befehl auf dem twemproxy Server laufen scheint es, als
HSCAN cache_Key 0 MATCH *pattern*
erwartet zu funktionieren Was bin ich mis singen?
Dank
Danke Das könnte das Problem sein Wie haben Sie entschlüsselt, was der Twemproxy-Server zurückgegeben hat? Ich sehe die Version "2.0", wenn ich auf die Version des Multiplexer-Servers schaue (was ist, was ich standardmäßig annehme) Aber ich bin mir nicht sicher, wo ich es als 3.0300-Beta (oder gleichwertig) sehen würde –
Verbinden Sie sich mit ** Redis-Cli ** mit Ihrem Redis-Server und führen Sie den Befehl ** INFO SERVER **, dort sollten Sie die Versionszeichenfolge – thepirat000
Die Redis-Version auf dem Server ist 3.2.0. Aber aus irgendeinem Grund SE es zu 2.0 in .Net Vorerst, indem Sie diese var Optionen = new ConfigurationOptions { EndPoints = { "redis-Endpunkt"}, Proxy = Proxy.None um es wurde auf die Standard scheint }; –