2017-02-06 32 views
1

データベース内のDateTimeOffsetがViewの標準出力(たとえば、> 10.12.2011)に出力されます。しかし、このような日付形式 - > 10.12.2011 12:30:30 +00:00が表示されます。 ビュー内の日付書式のみを変更したいです。DateTimeOffsetを通常の表示形式で表示する

私ParticialViewは、次のようになります。このような

@foreach (var ShippedData in Model.ShippedData) { 
    <tr> 
     <td>@ShippedData.ReceiveDate.ToString()</td> 
    </tr> 
} 

マイモデル:

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy/MM/dd}")] 
public DateTimeOffset? ReceiveDate { get; set; } 

間違った出力:2011年12月10日午前12時30分30秒00:00

正しいです出力:10.12.2011

+1

'ShippedData.ReceiveDate.GetValueOrDefault @()ToStringメソッド({ここに入力してください}) ' – Nkosi

+0

恐ろしい!ありがとう。実際にちょっとした簡単な解決策。 – NinjaCoder

答えて

4

ToString()は、デフォルトの書式設定を返します。

@Html.DisplayFor(m => ShippedData.ReceiveDate) 

または、ご希望のToStringの書式含める:あなたはDisplayFormat属性が利用されるようにDisplayForを使用する必要がありますどちらか。

@ShippedData.ReceiveDate.ToString("yyyy/MM/dd") 
+0

どのようにdaterangeの文字列を分割するのですか: 文字列の値: '' dd.MM.yyyy - dd.MM.yyyy "' – NinjaCoder

+0

ここでこれを使用しましたが、配列の範囲外ですインデックス範囲 'var dates = shippeddate.Split(new char [] {' - '}、StringSplitOptions.RemoveEmptyEntries); var startDate = DateTime.Parse(dates [0]); var endDate = DateTime.Parse(dates [1]); ' – NinjaCoder

関連する問題