Mam tablicę RedisValue[]
zwróconą z klienta StackExchange.Redis
. Chcę wziąć każdą z wartości (które w rzeczywistości są JSON
ciągów) w tablicy i połączyć je razem, aby uzyskać prawidłowy ciąg znaków JSON
, które można zwrócić do klienta.Czy istnieje sposób przekonwertować RedisValue [] na ciąg []?
Oto, co chcę zrobić ...
var results = redis.HashGet("srch", ArrayOfRedisKeys[]);
string returnString = "[" + string.Join(results, ",") + "]";
Jednak to nie działa, ponieważ results
jest tablicą RedisValue
nie tablicą string
. Czy istnieje prosty i skuteczny sposób na zrobienie tego innego niż tylko iterowanie tablicy RedisValue
?
ALERT. Zauważ, że jeśli wartości są zerowe, nigdy nie odniesiesz sukcesu z 'values.ToStringArray()', więc lepiej używać go jak 'ToStringArray (wartości)' bez metody rozszerzenia 'this' – Jaider
@Jaider możesz wywoływać metody rozszerzania na' null' wartości. Następujące działa dobrze: 'RedisValue [] vals = null; string [] foo = vals.ToStringArray(); '-' foo' ma wartość 'null', z powodu pierwszego' return'. Działa to * właśnie dlatego, że * kompilator po prostu przepisuje to jako 'string [] foo = ExtensionMethods.ToStringArray (vals);' –
Wow, jestem pod wrażeniem! następnie zignoruj mój poprzedni komentarz :) – Jaider