Я реализовал некоторые @helper
функции в Razor на основе сообщения Скотта Гу , и все идет неплохо.
Что меня интересует, так это то, можно ли вызвать одного @helper
из другого. Например, у меня есть следующий помощник, который отображает дату и время для DateTime?
:
@helper DateTimeDisplay(DateTime? date)
{
if (date.HasValue)
{
@date.Value.ToShortDateString()
at @date.Value.ToShortTimeString()
}
else
{
-
}
}
Это работает нормально, но в некоторых ситуациях у меня есть другие поля, которые не допускают значения NULL, поэтому я попытался добавить это в держать вещи DRY:
@helper DateTimeDisplay(DateTime date)
{
DateTimeDisplay(new DateTime?(date));
}
Это компилируется и работает нормально, но при рендеринге он просто отображается как пустая строка для не допускающего значения NULL DateTime
. Вот разметка, которая вызывает функции @helper
. Model.UpdateDate
- это обычный DateTime
, а Model.LastRun
- это DateTime?
...
Last updated
@Helpers.DateTimeDisplay(Model.UpdateDate)
Last run
@Helpers.DateTimeDisplay(Model.LastRun)
...
Есть ли способ визуализировать его @ вспомогательная функция
, вызвав ее из другого?