0

我这里有一个愚蠢的问题。我正在使用 ASP .NET MVC 4、EF5 和 Ext JS (Sencha) 开发一个 Web 应用程序。

问题是,按照设计(我不知道为什么),Ext JS 在执行 ajax 请求时会将具有空值的 js 对象转换为空字符串。

为了它,我将过度简化示例。

所以如果我在 JavaScript 中有一个变量

icon_id : null

当我得到 JObject 服务器端时,它变成了

icon_id : ""

icon_id当我作为请求的参数传递时。因此,当我编写时,icon_id.ToObject<MyNETIconIDClass>()我得到一个异常,它告诉我它不能从字符串转换为可为空的 int。这是可以理解的。

我可能误解了这背后的逻辑,但由于我不想弄乱 Ext JS 源代码,有什么办法可以告诉 Json.NET 反序列化器将空字符串视为 null ?

据我所见,使用转换器会很麻烦,因为我必须更改模型中每个类中的每个可为空的 int 属性才能使这项工作正常进行。

4

1 回答 1

0

根据评论,OP 发送的是 GET 请求而不是 POST。

于 2012-10-05T03:00:10.503 回答