I am new to ASP.NET MVC. I need to build a composite viewmodel out of three nested or cascading classes: Sport>Tournament>TournamentEvent

```
public class Sport
{
    public int Id { get; set; }
    public string SportName { get; set; }
    public virtual ICollection<Tournament> Tournaments { get; set; }
}

public class Tournament
{
    public int Id { get; set; }
    public string TournamentName { get; set; }
    public int SportId { get; set; }
    public virtual ICollection<TournamentEvent> TournamentEvents { get; set; }
}

public class TournamentEvent
{
    public int Id { get; set; }
    public string EventName { get; set; }
    public int TournamentId { get; set; }
}

```

As you can gather, each sport contains a collection of tournaments and each tournament contains a collection of events. I need to construct an unordered list, like so:

```
    <li> Soccer
        <li>English Premier League
            <li>Chelsea v Arsenal</li>
        </li>
    </li>

```

I need to build a composite viewmodel, using linq, to pass to my view, but I just can't figure it out. Please help