2016-10-17 67 views
1

當我保存一個字符串使用ServiceStack.Redis到Redis的:一個字符串對象Redis的返回值

client.Add("key1","abc"); 

在拿值,則返回:

client.GetValue("key1"); 

返回

「\」abc \「」

如何獲得完整的字符串?

感謝

+0

你確定'client.Add'是正確的使用方法嗎?我無法在文檔中找到它。看起來像'client.SetValue'就是你會用到的。 – Hazerd

+0

是的,有一種方法叫做Add。它將對象作爲值來創建一個通用方法來傳遞任何值。 – Satyajit

+0

我剛試過現場版。看起來像'client.Add'添加了這些引號,'client.SetValue'沒有添加它們。看看是否適合你。 – Hazerd

回答

1

看起來好像client.Add()方法的值轉換爲字符串(甚至是字符串)和包裝他們的報價。 client.SetValue()方法只接受字符串,不會將它們包裝在引號中。

一種選擇是將值自己轉換爲字符串。通過普通的ToString()方法或其他方法從對象中獲取所需的字符串。

但是,如果需要Add()方法。當你通過GetValue()得到字符串時,你可以選擇檢查字符串是否用引號括起來,如果是的話,刪除它們。

0

保存時,Redis會將字符串轉換爲JSON,這就是爲什麼它用引號括起來的原因。

因此,您必須將此字符串視爲JSON對象,然後手動或使用反序列化對其進行解析。