You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C# 反序列化JSON字符串前如何修改其中的DateTime值并增加2天

实现方案

你可以通过将JSON字符串先解析为JObject修改字段值,再反序列化为目标实体的方式实现,步骤如下:

  1. 先引入所需命名空间
using Newtonsoft.Json.Linq;
  1. 原有读取JSON字符串的代码保持不变,替换后续反序列化逻辑即可:
// 解析原始JSON为JObject
JObject jsonObj = JObject.Parse(value);
// 解析time_date字段值,加2天后回写
if (DateTime.TryParse(jsonObj["time_date"]?.ToString(), out DateTime originalTime))
{
    jsonObj["time_date"] = originalTime.AddDays(2).ToString("yyyy-MM-dd HH:mm:ss");
}
// 再将修改后的JObject反序列化为目标实体
authResponse = jsonObj.ToObject<Class1.Response>();
注意事项
  • 如果你后续需要在Response实体中使用修改后的time_date值,需要给Response类添加对应属性:
public string time_date { get; set; }
  • 上述代码用TryParse处理时间解析逻辑,可避免因时间格式异常导致程序报错,适合生产环境使用。

内容的提问来源于stack exchange,提问作者Jodie Calussi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 05:15:04