- Hướng dẫn đồng bộ khi tên thuộc tính JSON khác thuộc tính Class model trong JsonConvert.DeserializeObject (Chuyển chuỗi Json từ đọc API thành Class model)
- Mã hóa và giải mã dữ liệu bằng khóa đối xứng trong C# sử dụng thuật toán mã hóa khóa đối xứng AES
Sau đây mình sẽ hướng dẫn các bạn đồng bộ khi tên thuộc tính JSON khác thuộc tính Class model trong việc sử dụng hàm JsonConvert.DeserializeObject của thư viện Newtonsoft.Json (Chuyển chuỗi Json từ đọc API thành Class model)
Giả sử chuỗi kết quả Json từ việc bạn đọc API như sau:
[{ "department_id": 1, "department_name": "department name", "type": "chat.memberjoin", "name": "Visitor 7949" }]
Thì bạn cần tạo Class model như sau để đồng bộ giữa tên thuộc tính Json khi nó khác với tên thuộc tính Class model bằng cách sử dụng [JsonProperty(“tên thuộc tính Json”)]:
class Department { [JsonProperty("department_id")] public int id { get; set; } [JsonProperty("department_name")] public string? departmentName { get; set; } [JsonProperty("type")] public int type { get; set; } [JsonProperty("name")] public int name { get; set; } }
Và sau đây là Code để chuyển chuỗi Json kết quả thành Class model trên bằng hàm :
... // các hàm xử lý để đọc ra chuỗi kết quả Json từ API var responseContent = await response.Content.ReadAsStringAsync(); // responseContent là chuỗi kết quả Json nhận được từ đọc API List<Department>? listDepartment = JsonConvert.DeserializeObject<List<Department>>(responseContent); ... // các hàm xử lý tiếp theo của bạn
Vậy là xong các bạn nhé!