【问题标题】:How to convert a Redis ArrayRedisResult into a C# array?如何将 Redis ArrayRedisResult 转换为 C# 数组?
【发布时间】: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");

提前致谢

【问题讨论】:

    标签: c# arrays redis lua stackexchange.redis


    【解决方案1】:

    取自 OP 在一些评论中所说的其他答案:

    百万美元的问题是如何将其转换为类型数组 C#会懂吗?

    当你意识到你的问题有一个非常简单的答案时你会哭的:ArrayRedisResult 可以转换为很多数组类型:string[]bool[]...Check its source code.

    归根结底,只是编写一个显式演员表:

    var result = (string[])lLScript.Evaluate("myDatabaseInformation", "myKey");
    

    【讨论】:

    • 非常感谢。答案真的不远了。
    • @eddy0223 是的。我们应该请 Marc Gravell 知道他为什么决定将这些运算符实现为 explicit 而不是 implicit。使用隐式运算符,您可以将结果键入为 string[] 并且您不需要显式转换;P
    猜你喜欢
    • 1970-01-01
    • 2017-10-02
    • 1970-01-01
    • 1970-01-01
    • 2014-11-06
    • 1970-01-01
    • 2013-09-28
    • 2022-01-17
    • 1970-01-01
    相关资源
    最近更新 更多