C# &引用;字符串未被识别为有效的日期时间;对于字符串格式dd/MM/yyyyTHH:MM

C# &引用;字符串未被识别为有效的日期时间;对于字符串格式dd/MM/yyyyTHH:MM,c#,asp.net-mvc,date,datetime,C#,Asp.net Mvc,Date,Datetime,我使用一个声明为@Html.TextBoxFor(model=>model.StartDate,new{type=“datetime local”、@class=“form control”、@style=“height:34px;width:230px”})的Html.TextBoxFor(model=>model.StartDate,new{type=“datetime local”、@style=“height:34px;width:230px”)接受输入。这两个函数都通过AJAX将其值传

我使用一个声明为
@Html.TextBoxFor(model=>model.StartDate,new{type=“datetime local”、@class=“form control”、@style=“height:34px;width:230px”})的Html.TextBoxFor(model=>model.StartDate,new{type=“datetime local”、@style=“height:34px;width:230px”)接受输入。
这两个函数都通过AJAX将其值传递给C#控制器函数,该函数执行以下操作

DateTime ResourceStart=DateTime.ParseExact(resource\u start,“dd/MM/yyyyth:MM”,CultureInfo.InvariantCulture)

DateTime ResourceDue=DateTime.ParseExact(resource_due,“dd/MM/yyyyth:MM”,CultureInfo.InvariantCulture)

resource\u start
resource\u due
的值分别为“2016-12-02T09:30”和“2016-12-12T12:50”

下面是程序崩溃时的异常详细信息

System.FormatException was unhandled by user code
  HResult=-2146233033
  Message=String was not recognized as a valid DateTime.
  Source=mscorlib
  StackTrace:
       at System.DateTimeParse.ParseExact(String s, String format, DateTimeFormatInfo dtfi, DateTimeStyles style)
       at System.DateTime.ParseExact(String s, String format, IFormatProvider provider)
       at ITPortal.Areas.ITWorkstream.Controllers.WorkstreamController.CreateResource(Int32 task_id, String resource_start, String resource_due) in c:\Work\ITPortal\ITPortal-DEV\ITPortal\Areas\ITWorkstream\Controllers\WorkstreamController.cs:line 247
       at lambda_method(Closure , ControllerBase , Object[] )
       at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters)
       at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
       at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
       at System.Web.Mvc.Async.AsyncControllerActionInvoker.ActionInvocation.InvokeSynchronousActionMethod()
       at System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState)
       at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult)
       at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase`1.End()
       at System.Web.Mvc.Async.AsyncResultWrapper.End[TResult](IAsyncResult asyncResult, Object tag)
       at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult)
       at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3d()
       at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f()
  InnerException:
用户代码未处理System.FormatException HResult=-21462033 Message=字符串未被识别为有效的日期时间。 Source=mscorlib 堆栈跟踪: 位于System.DateTimeParse.ParseExact(字符串s、字符串格式、DateTimeFormatInfo dtfi、DateTimeStyles样式) 在System.DateTime.ParseExact(字符串s、字符串格式、IFormatProvider) 在c:\Work\ITPortal\ITPortal-DEV\ITPortal\Areas\ITWorkstream\Controllers.WorkstreamController.CreateResource(Int32任务id、字符串资源\u开始、字符串资源\u到期)中的ITPortal.Areas.ITWorkstream.Controllers.WorkstreamController:cs:247行 在lambda_方法中(闭包、控制器基、对象[]) 位于System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller,Object[]参数) 位于System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext ControllerContext,IDictionary`2参数) 位于System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext ControllerContext,ActionDescriptor ActionDescriptor,IDictionary`2参数) 在System.Web.Mvc.Async.AsyncControllerActionInvoker.ActionInvoke.InvokeSynchronousActionMethod()中 在System.Web.Mvc.Async.AsyncControllerActionInvoker.b_u39(IAsyncResult asyncResult,ActionInvokeInnerInvokeState) 位于System.Web.Mvc.Async.AsyncResultRapper.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult) 位于System.Web.Mvc.Async.AsyncResultRapper.WrappedAsyncResultBase`1.End() 在System.Web.Mvc.Async.asyncResultRapper.End[TResult](IAsyncResult asyncResult,对象标记) 位于System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) 在System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.b__3d()中 在System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.c__DisplayClass46.b__3f()中 内部异常:
我想我的问题在于我在ParseExact函数中为字符串声明的格式,有人能告诉我使用instad的格式吗?

您的格式字符串
“dd/MM/yyyyyth:MM”
与您的输入格式不匹配
2016-12-02T09:30
:格式是带斜线的第一天,而输入是带有破折号的第一年

您应该将输入更改为
02/12/2016T09:30
,或者更改格式:

DateTime.ParseExact(resource_due, "yyyy-MM-ddTHH:mm", CultureInfo.InvariantCulture)

您尝试过在值中使用“/”而不是“-”吗?
/
-
不一样(但是为什么不将参数
日期时间
改为
字符串
,以便正确绑定)?