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

C#使用DataContractJsonSerializer反序列化含逗号JSON报错如何解决

问题诱因

该报错和PlaceName字符串中包含的逗号无关联,核心错误是你定义的Places实体类属性类型和JSON字段类型不匹配:

  • JSON里的PlaceName是字符串类型的地名值
  • 你的实体类中PlaceName被错误定义为int类型,反序列化时序列化器尝试将字符串值强制转换为Int32类型失败,直接触发了报错。
修复方案

只需修改Places实体类中PlaceName的属性类型为string即可,修改后的实体类代码如下:

public class Places
{
    public int PlaceId { get; set; }
    public string PlaceName { get; set; }
}

附加优化建议:如果后续反序列化出现乱码问题,可以检查你传入的JSON编码格式,当前你的反序列化方法用的是Encoding.Unicode读取字节流,如果JSON是UTF8编码,可调整为Encoding.UTF8适配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 21:24:04