2011-05-20 100 views
0

假设你有一个简单的结构,像这样:JSON可空反序列化错误

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传递地图为JSON。问题,对于非空场景应该传递什么值?

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

+0

我在发帖前20分钟问过一位同事,他回来说这个回答: Map:{'PointA':{__type:“Point”,X:1,Y:1}} 注意,这可能不会确切地说,因为我改变了保护无辜者的名字。 – kakridge 2011-05-20 13:53:16

+0

我不认为JavaScriptSerializer可以处理Nullable 类型 - 请参阅http://stackoverflow.com/q/1785283/751090 – carlosfigueira 2011-05-20 15:17:17

+0

的问题我注意到,当我搜索并忽略{get;设置;}造成了这个问题。我可以轻松地转换为一个类,并远离自动属性。 – kakridge 2011-05-20 15:24:27

回答

0

这个问题是我在关于这个问题的评论中列出的。自动属性是问题。我转换了财产并且问题解决了。