Samantha J T Star
Samantha J T Star

Reputation: 32808

How can I sum up values in a Razor MVC4 view?

I am coding the following into my Razor view:

        <ul class="message"
            data-elapsed="@Model.Events.Sum(event => event.Elapsed)"
            id="stats-list">
        @foreach (ViewEvent viewEvent in @Model.Events)
        {
            <li>@viewEvent.Description : @viewEvent.Elapsed ms</li>
        }
        <li class="close-bt"></li>
        </ul>

This gives me the following error:

<div class="block-content no-title no-padding">
Line 63:             <ul class="message"
Line 64:                 data-elapsed=@(Model.Events.Sum(event => event.Elapsed)) 
Line 65:                 id="stats-list">
Line 66:             @foreach (ViewEvent viewEvent in @Model.Events)

but it gives me an error:

Compiler Error Message: CS1513: } expected

When I comment out all of line 64 my code shows my view.

Is this not a correct way to get the sum?

Upvotes: 2

Views: 5038

Answers (1)

Cristi Pufu
Cristi Pufu

Reputation: 9095

Try to remove the second @ from foreach. It should work:

<ul class="message"
            data-elapsed="@Model.Events.Sum(event => event.Elapsed)"
            id="stats-list">
        @foreach (ViewEvent viewEvent in Model.Events)
        {
            <li>@viewEvent.Description : @viewEvent.Elapsed ms</li>
        }
        <li class="close-bt"></li>
        </ul>

Upvotes: 4

Related Questions