2017-02-22 50 views
0

Я пытаюсь преобразовать мое целое число часов, 0-23 в удобном формате один, как:Преобразовать целое значение часов в отформатированные часов в Razor View

15 would be represented like: 15:00 
0 would be represetnted like: 00:00 
23 like: 23:00 

Это код с моей точки зрения :

@foreach (var item in ViewBag.HourlyGraph) 
{ 
    @:{device: '@item.Hour', geekbench:@item.Sales }, 
} 

Я пытаюсь представить элемент @. Наша ценность, как я упоминал выше. Я попытался с помощью интерполированное строку, как это:

"{@item.Hour}:00" 

Но на мой взгляд, говорит, что это не поддерживается, так как я использую C# 5.0 вместо C# 6,0 ...

Как могли бы сделать это вместо того, чтобы использовать интерполированные строки ?

ответ

1

Вы можете использовать стандартную строку форматирования для целых чисел, которые будут предварять ноль в случае необходимости:

@item.Hour.ToString("D2") 
+0

для 0 Я получаю 00, его не хватает: 00 часть XD – User987

+1

Ну, что мешает вам добавить его? Я имею в виду не '@ item.Hour.ToString (« D2 »): 00' работает для вас? Это выглядит довольно просто. –

+0

Дарин, я был так плохо, хаха ... Спасибо большое! – User987

1

Вы можете просто использовать метод ToString?

@foreach (var item in ViewBag.HourlyGraph) 
{ 
    @:{device: '@item.Hour.ToString("00")<text>:00</text>', geekbench:@item.Sales }, 
} 
+0

Мэтт, это дает, мне за 23, а именно: 00:23 – User987

+0

Вместо этого shuold будет 23:00 – User987

+0

Конечно. Виноват. Проверьте мой обновленный ответ. И правильно ли я понимаю, что вы никогда не увидите минут? Будут ли минуты всегда «00»? –