如何将 Redis ArrayRedisResult 转换为 C# 数组?
Posted
技术标签:
【中文标题】如何将 Redis ArrayRedisResult 转换为 C# 数组?【英文标题】:How to convert a Redis ArrayRedisResult into a C# array? 【发布时间】:2016-07-05 10:34:05 【问题描述】:我想将 Redis 返回的数组表转换为在我的 C# 代码中使用。我怎样才能做到这一点 ?
调试完代码,可以看到他返回了一个ArrayRedisResult
string script = @"return redis.call('HGETALL', @key)";
LuaScript lScript = LuaScript.Prepare(script);
var lLScript = lScript.Load("myServerinformation");
var result = lLScript.Evaluate("myDatabaseInformation", "myKey");
提前致谢
【问题讨论】:
【参考方案1】:取自 OP 在一些评论中所说的其他答案:
百万美元的问题是如何将其转换为类型数组 C#会懂吗?
当你意识到你的问题有一个非常简单的答案时你会哭的:ArrayRedisResult
可以转换为很多数组类型:string[]
、bool[]
...Check its source code.
归根结底,只是编写一个显式演员表:
var result = (string[])lLScript.Evaluate("myDatabaseInformation", "myKey");
【讨论】:
非常感谢。答案真的不远了。 @eddy0223 是的。我们应该请 Marc Gravell 知道他为什么决定将这些运算符实现为 explicit 而不是 implicit。使用隐式运算符,您可以将结果键入为string[]
并且您不需要显式转换;P以上是关于如何将 Redis ArrayRedisResult 转换为 C# 数组?的主要内容,如果未能解决你的问题,请参考以下文章