2014-03-07 137 views
1

所有我想要的是在asp.net MVC控制器轉換07.03.2014到2014-03-07,dd.mm.yyyyyyyy-mm-dd;)謝謝。轉換c#日期時間輸入[類型=日期]

+0

http://www.csharp-examples.net/string-format-datetime/ –

+0

請只與特定的標記您的問題版本號,如果你的問題實際上取決於版本。 –

+0

好吧,我會的。 ;) – Dimitri

回答

4

您可以使用DateTime對象上的ToString()方法來獲取所需的格式。

DateTime dt=new DateTime(2014,03,07); 
string newDateFormatted= dt.ToString("yyyy-MM-dd"); 

如果你想從一個字符串加載日期時間對象,你可以嘗試使用DateTime.ParseDateTime.ParseExtractTryParse

Here的格式說明符的一個很好的列表,你可以用ToString()

+0

非常感謝;) – Dimitri

2
使用

我用來創建一個編輯器模板來處理DataTime & Nullable<DateTime>就像下面一樣

Views/S hared/EditorTemplates/CustomDateTime.cshtml

@model DateTime? 
@{ 
    String modelValue = ""; 
    var dateFormat = 
      System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat; 


    if (Model.HasValue) 
    { 
     if (Model.Value != DateTime.MinValue) 
     { 
      if (ViewData["_displayFormat"] != null) 
      { 
      var format=(string)ViewData["_displayFormat"]; 
       modelValue = Model.Value.ToString(format) 

      } 
      else{ 
      modelValue = Model.Value.ToShortDateString(); 
      } 
     } 
    } 
} 

    @Html.TextBox("", modelValue) 

在查看

@Html.EditorFor(m => m.DateOfBirth, "CustomDateTime", 
        new { _displayFormat= "yyyy-MM-dd"}) 
+0

超級有用,謝謝。小事:我注意到dateFormat在第4行被聲明,但根本沒有被使用? –