0

我的視圖模型和控制器似乎以不同的格式保存日期時間。例如,在我看來,在HTML文本框中,如果我在2015年12月7日輸入了,它就會像「2015年12月7日」一樣節省了價值。我正在使用Boostrap Javascript DateTime Picker。 (一個側面說明:如果我在日期時間選擇器中輸入「dateFormat」,則選取器將不起作用,這就是爲什麼我註釋了該行)MVC中的日期格式

是否有方法可以更改保存的格式HTML文本框?

我的視圖模型:(部分)

<div class="form-group"> 
@Html.Label("Actual Completion Date", htmlAttributes: new { @class = "control-label col-md-2" }) 
      <div class="col-md-10"> 
       @Html.EditorFor(model => model.Actual_Completion_Date, new { htmlAttributes = new { @Value = Model.Actual_Completion_Date, @class = "form-control" } }) 
      </div> 
     @Html.ValidationMessageFor(model => model.Actual_Completion_Date, "", new { @class = "text-danger" }) 
    </div> 

     <div class="form-group"> 
      <div class="col-md-offset-2 col-md-10"> 
       <input type="submit" value="Save" class="btn btn-default" /> 
      </div> 
     </div> 

    </div> 
} 

@section scripts { 
    <script type="text/javascript"> 
     $(function() { 
      $('#Actual_Completion_Date').datetimepicker({ 
       //dateFormat: "dd/mm/yyyy", 
       defaultDate: '@Model.Actual_Completion_Date', 
       format: 'L', 
       showClose: true, 
       showClear: true, 
       toolbarPlacement: 'top', 
      }); 

      $('#Actual_Completion_Date').datetimepicker({ 
       defaultDate: '@Model.Actual_Completion_Date', 
       format: 'LT', 
       showClose: true, 
       showClear: true, 
       toolbarPlacement: 'top', 
       stepping: 15, 
      }); 
     }); 
    </script> 
} 

我的模型(部分):

[DataType(DataType.Date)] 
    [DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)] 
    public Nullable<System.DateTime> Date_Assigned { get; set; } 

    [DataType(DataType.Date)] 
    [DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)] 
    public Nullable<System.DateTime> Actual_Completion_Date { get; set; } 

任何建議或指針?提前謝謝了。

+0

@vinayakj - 不一定是真實的。以毫秒爲單位的時間需要UTC基礎 - 通常不適用,特別是對於整個日曆日期。更好的做法是ISO-8601(yyyy-MM-dd)格式。 –

+0

你應該可以使用'dateFormat'選項,但是你的值是錯誤的。而不是'dd/mm/yyyy',你需要'd/m/yy'。當然,這與您的模型中的'DataFormatString'設置衝突。 – howcheng

回答

0

如何解析datetime取決於以查詢字符串形式傳遞的值和值的當前語言。

作爲路徑的一部分傳遞的值將使用不變文化進行分析。用f12工具或Fiddler檢查你有什麼樣的要求。

如果你想改變你的行爲會改變CURENT文化的線程(張貼值和查詢字符串)或註冊自己的midelbinder(路由值)