Json.NETでプロパティ名を変更してシリアライズする
Json.NETでプロパティ名を変更してシリアライズするには、JsonPropertyAttributeを使います。
JsonPropertyAttributeのコンストラクタにプロパティ名を渡します。
class User { [JsonProperty("first_name")] public string FirstName { get; set; } [JsonProperty("last_name")] public string LastName { get; set; } }
で、シリアライズしてみると。
var user = new User { FirstName = "悟空", LastName = "孫" }; // シリアライズ var settings = new JsonSerializerSettings { Formatting = Formatting.Indented }; var json = JsonConvert.SerializeObject(user, settings); Console.WriteLine(json); // { // "first_name": "悟空", // "last_name": "孫" // }
もちろんデシリアライズもOKでした。