クライアントのデフォルトのデシリアライザーは.NETのバイナリシリアライザーを使用するため、JSON文字列を保存または読み取る場合、それは単なる文字列です。GetJsonは常に文字列を返すだけです。ただし、いくつかのオプションがあります。
JSONレコードをDictionaryインスタンスに変換できます。
var appJson = "{ \"UsersOnline\" : 1, \"NewestMember\" : \"zblock\" }";
var result = client.ExecuteStore(StoreMode.Set, "userCount", appJson);
var item = client.GetJson<Dictionary<string, object>>("userCount");
Console.WriteLine("There are {0} users online. The newest member is {1}.",
item["UsersOnline"], item["NewestMember"]);
または、動的なExpandoObjectインスタンスを使用できます。
var appJson = "{ \"UsersOnline\" : 1, \"NewestMember\" : \"zblock\" }";
var result = client.ExecuteStore(StoreMode.Set, "userCount", appJson);
dynamic item = client.GetJson<ExpandoObject>("userCount");
Console.WriteLine("There are {0} users online. The newest member is {1}.",
item.UsersOnline, item.NewestMember);
どちらの場合でも、静的型チェックが失われます。これは、目的に問題がないようです。どちらの場合も、JSONをPOCOに解析しなくてもJSONプロパティにアクセスできます...
編集:私は役立つかもしれないいくつかの拡張メソッドを書き、それらについてhttp://blog.couchbase.com/moving-no-schema-stack-c-and-dynamic-typesでブログに書きました。