我有一个模型,其属性类型为DateTime。当我发送AJAX发布请求时,控制器表示modelstats无效。因为它无法解析日期时间。我以“ dd / mm / yyyy”格式发送日期时间。我已经设置了区域性,并且我的aspnet.core项目给出了正确的格式。另外,当我使用剃刀形式张贴到具有相同的datetime格式时。它说modelstate是有效的。
这是我尝试通过的日期格式:23/06/2019
我的模特:
public class Article
{
public Guid ArticleID { get; set; }
public int ArticleRecordId { get; set; }
public string ArticleMainBackGround { get; set; }
public string ArticleMainBanner { get; set; }
public string MainTitle { get; set; }
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime? PublishFrom { get; set; }
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime? PublishTo { get; set; }
public int OrderSquence { get; set; }
}
我的ajax发布请求
var payload = {
ArticleRecordId : 0,
ArticleMainBackGround: $("#ArticleMainBackGround").val(),
ArticleMainBanner: $("#ArticleMainBanner").val(),
MainTitle: $("#MainTitle").val(),
PublishFrom: $("#StartDate").val() ,
PublishTo: $("#EndDate").val() ,
//OrderSquence: $("#OrderSquence").val(),
IsEnabled: $("#IsEnabled").val(),
ArticleSections: articleSection
};
console.log(payload);
$.ajax(
{
type: 'POST',
url: '/Article/AddArticle',
contentType: 'application/json',
data: JSON.stringify(payload),
success: function (result) {
console.log(result);
},
failed: function () {
}
}
);
答案 0 :(得分:0)
检查以“ #EndDate”作为ID的IF元素是否包含名称属性,例如name =“ PublishTo”?