Razor View, если предложение не работает

У меня есть этот код бритвы

    <td>@Model.ProcessedOn.Value.ToUniversalTime() UTC 
@(Model.ProcessedOn.Value != null ?  (Model.SendingOn.Value.AddTicks(-(Model.SendingOn.Value.Ticks % TimeSpan.TicksPerSecond)) - Model.AddedOn.Value.AddTicks(-(Model.AddedOn.Value.Ticks % TimeSpan.TicksPerSecond)))</td>

Мне нужно проверить, Model.ProcessedOnотличается ли оно от нуля.

Если это по - другому мне нужно , чтобы показать вычесть между Model.SendingOnи Model.AddedOnкоторые являются значения DateTime. Этот код:

.AddTicks(-(Model.SendingOn.Value.Ticks % TimeSpan.TicksPerSecond))

Это просто удалить миллисекунды.

У меня проблема с @. Я уже пробовал разные способы, но это предложение возвращает ошибку, я уверен, что у меня просто есть ошибка sintax.

Может ли кто-нибудь помочь мне, пожалуйста?

c#,.net,razor,

2

Ответов: 1


2 принят

Вы можете попытаться использовать @if([condition]){}вместо тернарного условного оператора?: , Потому что вы ожидаете результата, нужно только одно суждение.

?:Синтаксис

состояние ? first_expression: second_expression;

<td>
    @Model.ProcessedOn.Value.ToUniversalTime() UTC
    @if (Model.ProcessedOn.Value != null)
    {
        @(Model.SendingOn.Value.AddTicks(-(Model.SendingOn.Value.Ticks % TimeSpan.TicksPerSecond)) - Model.AddedOn.Value.AddTicks(-(Model.AddedOn.Value.Ticks % TimeSpan.TicksPerSecond)))
    }
</td>

Заметка:

Я бы написал расчет отображения Controllerвместо View, ViewЕдинственный ответ для данных отображения, предоставленных данными Controller.

C # ,. сеть, бритва,
Похожие вопросы