Simple JSON を使用してこの文字列をJSONに変換しようとしています:
"{\"objects\":[{\"id\":1,\"title\":\"Book\",\"position_x\":0,\"position_y\":0,\"position_z\":0,\"rotation_x\":0,\"rotation_y\":0,\"rotation_z\":0,\"created\":\"2016-09-21T14:22:22.817Z\"},{\"id\":2,\"title\":\"Apple\",\"position_x\":0,\"position_y\":0,\"position_z\":0,\"rotation_x\":0,\"rotation_y\":0,\"rotation_z\":0,\"created\":\"2016-09-21T14:22:52.368Z\"}]}"
残念ながら、Visual Studioには対話型デバッグコンソールがないようです。たとえば、デバッガーを行に配置し、ライブインタラクティブコンソールでコードのその部分にステップインします。そうでなければ、SimpleJSONのライブラリを試して、この動作を確認する方法を確認できます。私が間違っている場合は、必ず私を修正してください!
それは不可能ですが、誰もこれを達成する方法を知っていますか?私はこれを試しました:
JSONData jsonData = new JSONData(my_json_string);
しかし、それは文字列をさらにエスケープし、文字列を保持します:
"\"{\\\"objects\\\":[{\\\"id\\\":1,\\\"title\\\":\\\"Book\\\",\\\"position_x\\\":0,\\\"position_y\\\":0,\\\"position_z\\\":0,\\\"rotation_x\\\":0,\\\"rotation_y\\\":0,\\\"rotation_z\\\":0,\\\"created\\\":\\\"2016-09-21T14:22:22.817Z\\\...
私はC#を初めて使用しますが、JSONの解析をよりアクセスしやすくするために、C#にネイティブなものが何もないことに驚いています。あるの?
まず、データモデルを作成します。 json2sharp を使用できます。これは非常に便利なツールです。
public class Item
{
public int id { get; set; }
public string title { get; set; }
public int position_x { get; set; }
public int position_y { get; set; }
public int position_z { get; set; }
public int rotation_x { get; set; }
public int rotation_y { get; set; }
public int rotation_z { get; set; }
public string created { get; set; }
}
次にNewtonsoft.Json
およびdeserializeメソッドを呼び出します。
var list = JsonConvert.DeserializeObject<List<Item>>(Yourjson);
質問は、文字列をJSONオブジェクトに変換する方法を尋ねます...これは、次のように、クラスまたはデータモデルを使用せずに達成できます。
using Newtonsoft.Json;
string str = "{\"objects\":[{\"id\":1,\"title\":\"Book\",\"position_x\":0,\"position_y\":0,\"position_z\":0,\"rotation_x\":0,\"rotation_y\":0,\"rotation_z\":0,\"created\":\"2016-09-21T14:22:22.817Z\"},{\"id\":2,\"title\":\"Apple\",\"position_x\":0,\"position_y\":0,\"position_z\":0,\"rotation_x\":0,\"rotation_y\":0,\"rotation_z\":0,\"created\":\"2016-09-21T14:22:52.368Z\"}]}";
dynamic json = JsonConvert.DeserializeObject(str);
これで、次のようにjsonのコンテンツにアクセスできます。
json["objects"][0]["title"];
returns "Book"
C#コードを操作できる「インタラクティブデバッグコンソール」のオプションの1つは、Xamarin Workbooks... Microsoft.com/en -us/xamarin/tools/workbooks /
Xamarin Workbooksは、実験、学習、作成に最適なドキュメントとコードのブレンドを提供します...何とか何とか
システムユーティリティを試しましたか?
このように https://msdn.Microsoft.com/ru-ru/library/system.json.jsonvalue.parse%28v=vs.95%29.aspx
使用できます
public static JsonValue Parse(string jsonString)
JsonValue
クラスからjsonobjectまたは必要なものにキャストします。