【问题标题】:aspmvc post datetime with json error带有json错误的asp mvc发布日期时间
【发布时间】:2013-01-07 09:29:42
【问题描述】:

当我使用 Json 发布 DateTime 时,出现以下错误: 错误 500 无法将“System.DateTime”类型的对象转换为“System.Array”类型。

我不明白为什么! 你能帮帮我吗?

标头发送如下所示:

{"MyDate":"2012-12-31T23:00:00.000Z","Param1":"aaaa","IdItem":123}

我的视图模型:

 public class MyViewModel
 {
public DateTime MyDate { get; set; }
public string Param1 {get;set;}
public Int32? IdItem { get; set; }
 }

我的控制器:

[HttpPost]
    public void Saisie(MyViewModel model)
    { ... }

我的 Javascript 代码:

$.ajax({
        url: url,
        type: 'post',
        dataType: 'json',
        data : JSON.stringify(model),
        contentType: 'application/json',
success : function() {...}
})

【问题讨论】:

    标签: jquery asp.net-mvc json asp.net-web-api asp.net-mvc-viewmodel


    【解决方案1】:

    使用 data: $(form).serialize() 代替 data: JSON.stringify(model)

    【讨论】:

    【解决方案2】:

    我在视图模型中发现了我的问题:

    public class MyViewModel
    {
    [MaxLength(10)]
    public DateTime MyDate { get; set; }
    }
    

    MaxLength 属性导致错误

    【讨论】:

    • 我今天刚遇到这个问题,我评论了一个属性,但没有评论它上面的 DataAnnotations ......下面有一个 DateTime ......让我疯狂了几个小时。感谢您发布您自己的解决方案,以实现更大的利益。
    猜你喜欢
    • 2018-12-23
    • 2013-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多