我在 JS 和 C#(asp.net core 2.1)中遇到了一个奇怪的日期问题。我在前端添加日期并尝试使用以下 JavaScript 将它们发回服务器:$("#editOperation").on("submit", function(e) { e.preventDefault(); var form = $(this); var url = form.attr("action"); // change date to YYYY-MM-DD format for (let i = 0; i < form[0].length; i++) { if (form[0][i].className.includes("hdn-exclude-")) { if (form[0][i].value) { var date = moment(form[0][i].value); form[0][i].value = date.format('YYYY-MM-DD'); } } } var formData = new FormData(form.get(0)); $.ajax({ url: url, data: formData, type: "post", contentType: false, processData: false, success: function (response) { if (response.result) { toastr.success("Success!"); setTimeout(function () { window.location = $("#cancelEditOperation").attr("href"); }, 1000); } else { toastr.error(response.errorMessage); } } }); });然而,我遇到的问题是,当一个日期在任何给定月份的 12 日之后(例如13/07/2018- 澳大利亚格式),那么 C# 似乎无法解析它并给它一个默认值1/01/0001 12:00:00 AM.如果日期有任何给定月份的 BEFORE 或 ON 12 日(例如 12/06/2018),那么它在 C# 方面将是正确的 6/12/2018 12:00:00 AM这是我在 C# 中的模型:public class GetOperationExcludeDate{ public DateTime StartDate { get; set; } public DateTime EndDate { get; set; }}而我的行动:[HttpPost("EditOperation/{id}")][AutoValidateAntiforgeryToken]public async Task<ApiBooleanResponse> EditOperation(string id, GetOperationExcludeDate model){ return await _transportCompanyService.EditServiceOperationAsync(id, model);}我如何能够规范化我的日期,以便 C# 能够根据区域识别格式并正确解析它?(我可以看到,当给出澳大利亚格式时,它正试图将其解析为美国格式)
- 1 回答
- 0 关注
- 212 浏览
添加回答
举报
0/150
提交
取消