[英]pass date to c# function from javascript method
我正在调用返回 FileContentResult 的FileContentResult
。 但是,日期没有作为参数传递给c#
function 并且始终显示为null
。 我错过了什么:
Javascript 代码:
function exportResponses()
{
window.location = "/Blah/ExportResponse?
questionnaireID=0&clinicID=0&responseStartDate='19/10/2019'";
}
C# function
public FileContentResult ExportResponse(
int questionnaireID = 0,
int clinicID = 0,
DateTime? responseStartDate=null)
{
}
尝试以ISO8601格式传递日期(即在传递给视图之前使用Date().toISOString()
)。
试试下面的代码:
function exportResponses()
{
var startDate = new Date('10/10/2019').toISOString();
window.location = "/SMS/ExportResponse?
questionnaireID=0&clinicID=0&responseStartDate="+startDate ;
}
并在您的 c# function 尝试以您所需的格式将参数responseStartDate
解析为DateTime
。
DateTime startDate = DateTime.ParseExact(responseStartDate, "yyyyMMdd")
针对您的问题,您必须将日期作为字符串发送到您的Controller
方法:
public FileContentResult ExportResponse(int questionnaireID = 0, int clinicID = 0, string responseStartDate=null)
然后您可以在您的方法中相应地处理字符串值。
尝试将日期分隔为天、月和年,因为在 URL 变量中使用“/”不是一个好习惯。
你尝试这样的事情:
window.location = "/SMS/ExportResponse?
questionnaireID=0&clinicID=0&day="+startDate.day+"&month="+startDate.month+"&year="+startDate.year
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.