gpt4 book ai didi

asp.net-mvc - 如何在asp.net MVC中将日期时间从 View 传递到 Controller

转载 作者:行者123 更新时间:2023-12-02 11:36:50 28 4
gpt4 key购买 nike

我正在尝试将以下数据从我的 View 传递到 Controller 。

已编辑

<script type="text/javascript">
var pathname = 'http://' + window.location.host;
var Student = [
{ Name: "Vijay", ID: 1, DOB: "2010-12-09T08:00:00.000Z" },
{ Name: "Anand", ID: 2, DOB: "2010-12-09T08:00:00.000Z" }
];

$.ajax({
url: pathname + "/Home/UpadetStu",
type: "POST",
dataType: "json",
data: JSON.stringify(Student),
contentType: "application/json; charset=utf-8",
success: function (result) { },
failure: function (r, e, s) { alert(e); }
});

</script>



[ObjectFilter(Param = "stuData", RootType = typeof(Stu[]))]
public JsonResult UpadetStu(Stu[] stuData)
{
return this.Json(new { success = true });
}

[DataContract]
public class Stu
{
[DataMember]
public string Name { get; set; }

[DataMember]
public int ID { get; set; }

[DataMember]
public DateTime? DOB { get; set; }

}

但是在 Controller 中,Name 和 ID 为 null,DOB 的默认日期时间为 null,我发现传递日期时间存在问题。有没有更好的方法将日期时间从 View 传递到 Controller ?我错过任何解析吗?

最佳答案

问题是 Thu Dec 9 13:30:00 UTC+0530 2010 无法在 C# 中解析为有效的日期时间对象。您可以通过简单地调用 DateTime.Parse("Thu Dec 9 13:30:00 UTC+0530 2010") 来尝试,它会失败。

我建议您最好返回ISO 8601,而不是从服务器返回该日期格式。格式类似于 2010-12-09T08:00:00.000Z

您可以轻松地将长日期时间格式从 javascript 转换为 ISO 8601,

new Date("Thu Dec 9 13:30:00 UTC+0530 2010").toJSON();

如果您使用JSON.NET库,您可以轻松控制日期时间的序列化方式。

更新:

<script type="text/javascript">

var Student = [
{ Name: "Vijay", ID: 1, DOB: "2010-12-09T08:00:00.000Z" },
{ Name: "Anand", ID: 2, DOB: "2010-12-09T08:00:00.000Z" }
];

$.ajax({
url: "/Home/Index",
type: "POST",
dataType: "json",
data: JSON.stringify(Student),
contentType: "application/json; charset=utf-8",
success: function (result) { },
failure: function (r, e, s) { alert(e); }
});

</script>

[HttpPost]
public ActionResult Index(Student[] students)
{
...
}

关于asp.net-mvc - 如何在asp.net MVC中将日期时间从 View 传递到 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11185847/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com