我知道您可以使用 Newtonsoft 轻松完成此操作。然而,当我使用 .NET Core 3.0 时,我正在尝试使用新方法与 JSON 文件交互System.Text.Json——即——我拒绝相信我正在尝试做的事情有那么困难!
我的应用程序需要列出尚未添加到我的数据库中的用户。为了获取所有用户的完整列表,该应用程序从 Web API 检索 JSON 字符串。我现在需要遍历这些用户中的每一个,并在将新的 JSON 列表返回到我的视图之前检查他们是否已经添加到我的应用程序中,以便它可以向最终用户显示新的潜在用户。
由于我最终会在流程结束时返回另一个 JSON,因此我不想特别费心将其反序列化为模型。请注意,来自 API 的数据结构可能会改变,但它总会有一个键,我可以从中与我的数据库记录进行比较。
我的代码目前看起来像这样:
using (WebClient wc = new WebClient())
{
var rawJsonDownload = wc.DownloadString("WEB API CALL");
var users = JsonSerializer.Deserialize<List<UserObject>>(rawJsonDownload);
foreach (var user in users.ToList())
{
//Check if User is new
if (CHECKS)
{
users.Remove(user);
}
}
return Json(users);
}
Run Code Online (Sandbox Code Playgroud)
为了实现对 Newtonsoft 来说相当微不足道的东西,这似乎有很多障碍需要跳过。
任何人都可以建议我这样做的更好方法 - 理想情况下,不需要UserObject?