AJAX 経由で渡された JSON オブジェクトを C# オブジェクトに取り込む簡単な方法はありますか?
これは、 JSON.stringifyを使用してページからC# Web メソッドに渡される JSON オブジェクトです。
{
"user": {
"name": "asdf",
"teamname": "b",
"email": "c",
"players": ["1", "2"]
}
}
JSON オブジェクトを受け取る C# Web メソッド:
[WebMethod]
public static void SaveTeam(Object user)
{
}
Webメソッドに渡されるJSONオブジェクトのオブジェクト構造を表すC#クラス
public class User
{
public string name { get; set; }
public string teamname { get; set; }
public string email { get; set; }
public Array players { get; set; }
}
ベストアンサー1
これは、デフォルトのシリアライザーよりも高速な Newtonsoft NuGet パッケージに依存します。
クラスがある場合は、以下のコードを使用できます。
Mycustomclassname oMycustomclassname = Newtonsoft.Json.JsonConvert.DeserializeObject<Mycustomclassname>(jsonString);
クラスがない場合は、動的を使用します。
var oMycustomclassname = Newtonsoft.Json.JsonConvert.DeserializeObject<dynamic>(jsonString);