Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如何将日期时间作为参数从mvc发送到web api?_Asp.net Mvc_Asp.net Web Api - Fatal编程技术网

Asp.net mvc 如何将日期时间作为参数从mvc发送到web api?

Asp.net mvc 如何将日期时间作为参数从mvc发送到web api?,asp.net-mvc,asp.net-web-api,Asp.net Mvc,Asp.net Web Api,现在,当我将它从mvc控制器发送到web api(如'01-05-2020 00:00:00'web api)时,会得到'05-01-2020 00:00:00',如果我发送'21-04-2020 00:00:00',则会给出错误400:BadRequest 我在web api中获取参数 IHttpActionResult Applications(DateTime fromDate,DateTime toDate) Mvc控制器 HttpClient client = new HttpCli

现在,当我将它从mvc控制器发送到web api(如'01-05-2020 00:00:00'web api)时,会得到'05-01-2020 00:00:00',如果我发送'21-04-2020 00:00:00',则会给出错误400:BadRequest

我在web api中获取参数

IHttpActionResult Applications(DateTime fromDate,DateTime toDate)
Mvc控制器

HttpClient client = new HttpClient();
client.BaseAddress = new Uri("https://localhost:44329/api/Values");
var postTask = client.GetAsync("/api/Values/Applications?fromDate=" + FromDate + "&toDate=" + ToDate );

向API发送日期时,建议使用独立于区域性的格式。广泛使用的是ISO 8601格式

您可以通过调用ToString(“O”)将日期转换为ISO 8601:

有关格式的详细信息,请参阅此链接:


还请注意,时区是另一个需要考虑的参数,因此将日期作为UTC进行传输和预期是避免时区相关问题的良好做法

你能把你的mvc控制器代码吗?
var postTask = client.GetAsync("/api/Values/Applications?fromDate=" + FromDate. ToString("O") + "&toDate=" + ToDate.ToString("O"));