【问题标题】:JSON Nullable Deserialization ErrorJSON可为空的反序列化错误
【发布时间】:2011-05-20 13:46:33
【问题描述】:

假设你有一个简单的结构,像这样:

public struct Point
{
    public int X { get; set; }
    public int Y { get; set; }
}

还有一个像这样的示例类:

public class Map
{
    public int ID { get; set; }
    public Point? PointA { get; set; }
    ///...
}

现在,假设您通过 AJAX 将 Map 作为 JSON 传递。问题,not null 场景应该传递什么值?

在 C# 3.5 ASP.NET ASMX Web 服务中使用 JavaScriptSerializer 可能很重要。

【问题讨论】:

  • 我在发帖前 20 分钟问了一位同事,他回复了这个答案: Map: { 'PointA': { __type: "Point", X: 1, Y: 1} } 注意,这可能不准确,因为我已更改名称以保护无辜者。
  • 我不认为 JavaScriptSerializer 可以处理 Nullable 类型 - 请参阅stackoverflow.com/q/1785283/751090的问题
  • 我注意到当我搜索并忽略了 {get; set;} 导致了这个问题。我可以轻松地转换为一个类并摆脱自动属性。

标签: ajax json asmx nullable


【解决方案1】:

问题是我在关于该问题的评论中列出的内容。自动属性是问题所在。我转换了属性,问题得到了解决。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-09
    • 1970-01-01
    • 2018-02-26
    相关资源
    最近更新 更多