在上一篇-基礎篇當中,我們已經知道如何在Visual Studio當中透過Web API,在Azure上Redis Cache存取簡單的型態資料如String。
但在大部分的程式情況中,我們不會只有用到簡單的型態資料(String)而已,而是有一堆物件型態的資料要處理,那這時候該怎麼辦呢?!
那這時候得對你的物件型態資料做序列化再將資料存入Redis Cache當中,對於怎樣做序列化再將資料放入Redis Cache當中,可參考"使用Azure Cache - Redis Cache 加速效能"的後半段說明。小弟我在這邊不再贅述,而是想要提出一種簡單的懶人方式,讓大家就可以快速地將物件資料存入Redis Cache當中。
因為在這邊我們寫的是.NET程式而且是ASP.NET,所以相信看倌們都知道ASP.NET的專案當中,常常會用到一套Library叫JSON.NET讓我們方便的把物件資料轉成JSON資料,快速又方便。
所以在這邊我們也可以利用JSON.NET來當作我們序列化的方式,不過效益如何就看倌要自行評估看看了。
首先,我們先回到Visual Studio的"套件管理器主控台"當中。
接著再鍵入"Install-Package Newtonsoft.Json”
安裝完成的訊息。
(因為原本的Web API專案就已經有安裝JSON.NET的Library,所以我們再次安裝會更新成最新版的JSON.NET的Library)
接著在我們的專案程式當中設計一個類別Contact,準備當作物件資料的資料型態。
再來因為要使用JSON.NET,得先引用Newtonsoft.Json這個Namespace到程式當中。
完成後我們來專寫一個新增或更新object data的Web API方法。在這方法當中,同樣是用QueryString來將資料傳入,並且透過固定的格式將資料的資訊分隔開來,然後再將該資料轉存成Contact的物件資料。
所以在這段程式碼當中的藍色框當中的程式
string data = JsonConvert.SerializeObject(aContact);
參考資料:
Azure - Redis Cache:
http://blog.sanc.idv.tw/2014/08/azure-redis-cache.html
如何使用 Azure Redis 快取:
http://azure.microsoft.com/zh-tw/documentation/articles/cache-dotnet-how-to-use-azure-redis-cache/
使用Azure Cache - Redis Cache 加速效能:
http://www.dotblogs.com.tw/jaigi/archive/2015/01/08/148005.aspx
CODE-使用JSON.NET處理動態物件屬性
http://blog.darkthread.net/post-2010-06-05-json-net-jobject-example.aspx
沒有留言:
張貼留言