C# DateTime和ParseExact无法正常工作

C# DateTime和ParseExact无法正常工作,c#,asp.net,jquery,C#,Asp.net,Jquery,我正在使用AJAX并发送某些数据: var eventtype = parseInt(record.<%= CEO.FieldEvaluator.GetEvaluatorByDId("EVENT_TYPE_ID").GetFieldDataFieldId()%>); var begindate = parseInt(record.<%= CEO.FieldEvaluator.GetEvaluatorByDId("BeginDate").GetFieldDataFiel

我正在使用AJAX并发送某些数据:

  var eventtype = parseInt(record.<%= CEO.FieldEvaluator.GetEvaluatorByDId("EVENT_TYPE_ID").GetFieldDataFieldId()%>);
   var begindate = parseInt(record.<%= CEO.FieldEvaluator.GetEvaluatorByDId("BeginDate").GetFieldDataFieldId()%>);
   var enddate = parseInt(record.<%= CEO.FieldEvaluator.GetEvaluatorByDId("EndDate").GetFieldDataFieldId()%>);

        $.ajax({
            type: "POST", url: "Data.aspx/CheckInsertRecord",
            data: "{EventType:'" + eventtype + "',BeginDate:'" + begindate + "'," +
                   "EndDate:'" + enddate+"' }",
            contentType: "application/json; charset=utf-8", dataType: "json",
            success: function (msg) {
            alert(msg.d);

            }
        });
然而,当我运行它时,我得到一个错误

  "String was not recognized as a valid Datetime"
你能帮我摆脱这个吗

或者有没有其他方法将字符串转换为日期时间?

试试看

DateTime bd = DateTime.ParseExact(BeginDate,"MM/dd/yyyy", provider);
DateTime ed = DateTime.ParseExact(EndDate, "MM/dd/yyyy", provider);


在.NET中,像“01/01/2011”这样的日期字符串的正确格式是
“MM/dd/yyyy”

是MM/dd/yyyy格式的开始日期还是结束日期?是。它的单位是MM/DD/YYYYformat@Nishanth我测试了
DateTime bd=DateTime.ParseExact(“2010年12月31日”,“年月日”,CultureInfo.InvariantCulture)
DateTime bd=DateTime.ParseExact(“2010年12月31日”,“年月日”,CultureInfo.InvariantCulture)并且我没有得到第二种格式的异常。@Nishanth BeginDate字符串是什么样子的?我更新了代码。。。。。。。它实际上是用户从日历中输入的内容,看起来像6/31/2011@Nishanth
2011年6月31日
日期无效。六月只有30天。而且
“M/d/yyyy”
看起来更适合您的上下文。我没有试图添加它。。我只是作为一个例子写的
DateTime bd = DateTime.ParseExact(BeginDate,"MM/dd/yyyy", provider);
DateTime ed = DateTime.ParseExact(EndDate, "MM/dd/yyyy", provider);
DateTime bd = DateTime.ParseExact(BeginDate,"M/d/yyyy", provider);
DateTime ed = DateTime.ParseExact(EndDate, "M/d/yyyy", provider);