C# 使用引导数据选择器选择未来日期并将其传递给ASP.NET MVC控制器

C# 使用引导数据选择器选择未来日期并将其传递给ASP.NET MVC控制器,c#,asp.net-mvc,twitter-bootstrap,datepicker,C#,Asp.net Mvc,Twitter Bootstrap,Datepicker,我尝试将一个日期从引导数据采集器(包含在html表单中)传递到ASP.NET MVC3控制器。问题是,当我选择过去的日期时,传递给控制器的模型有一个适当的DateTime字段,该字段填充了正确的值。但是,当我选择“当前日期”或“未来日期”时,我会在StartDate DateTime字段中获得0001-01-01值。 以下是视图的代码: @using (Ajax.BeginForm("AddNewActivity", "Home", null, new AjaxOptions { Htt


我尝试将一个日期从引导数据采集器(包含在html表单中)传递到ASP.NET MVC3控制器。问题是,当我选择过去的日期时,传递给控制器的模型有一个适当的DateTime字段,该字段填充了正确的值。但是,当我选择“当前日期”或“未来日期”时,我会在StartDate DateTime字段中获得0001-01-01值。 以下是视图的代码:

@using (Ajax.BeginForm("AddNewActivity", "Home", null, new AjaxOptions
{
    HttpMethod = "Post",
    UpdateTargetId = "activitiesTableDiv",
    InsertionMode = InsertionMode.Replace,
    OnBegin = "disableButton"
}))
{
    @Html.ValidationSummary(true)
    <fieldset>
        <div class="editor-label">
            Start date
        </div>
        <div class="editor-field">
            <input id="StartDate" data-date-format="dd-mm-yyyy" class="pickDate form-control valid"
                type="text" name="StartDate" data-val-required="The StartDate field is required."
                data-val="true" />
            @Html.ValidationMessageFor(model => model.StartDate)</div>
    </fieldset>
}
型号:

public class ActivityModel
{
    public long Id { get; set; }

    public string ObjectId { get; set; }

    public TagDTO[] Tags { get; set; }

    public ModelItemChecked[] ChosenTags { get; set; }

    public DateTime StartDate { get; set; }

    public DateTime Deadline { get; set; }

    public DateTime ResultsAnnouncement { get; set; }
}

我找不到有类似问题的人。

我认为问题在于以下代码中的日期格式字符串:

<input id="StartDate" data-date-format="dd-mm-yyyy" class="pickDate form-control valid"
            type="text" name="StartDate" data-val-required="The StartDate field is required."
            data-val="true" />

显示实际的POST主体和模型类。
<input id="StartDate" data-date-format="dd-mm-yyyy" class="pickDate form-control valid"
            type="text" name="StartDate" data-val-required="The StartDate field is required."
            data-val="true" />
[DisplayFormat(ApplyFormatInEditMode=true, DataFormatString="dd-mm-yyyy")]
public DateTime StartDate { get;set; }