C# ASP.NET MVC Basics Modeling and Presenting Data Using Razor to Render Boolean Values

Joel Brennan
Joel Brennan
18,299 Points

Bummer! Did you use the ternary operator to convert the 'Favorite' property value to 'Yes' or 'No'?

Hi Can anyone help please? I can't see where I'm going wrong.

@model Treehouse.Models.VideoGame

@{
    ViewBag.PageTitle = "Video Game Detail";
}

<h1>@Model.Title</h1>

<h5>Favorite: @(Model.Favorite == true ? "Yes" : "No")</h5>

<h5>Description:</h5>
<div>@Model.Description</div>

<h5>Characters:</h5>
<div>
    <ul>
        @foreach (var character in Model.Characters)
        {
            <li>@character</li>
        }
    </ul>
</div>
Detail.cshtml
@model Treehouse.Models.VideoGame

@{
    ViewBag.PageTitle = "Video Game Detail";
}

<h1>@Model.Title</h1>

<h5>Favorite: @(Model.Favorite == true ? "Yes" : "No")</h5>

<h5>Description:</h5>
<div>@Model.Description</div>

<h5>Characters:</h5>
<div>
    <ul>
        @foreach (var character in Model.Characters)
        {
            <li>@character</li>
        }
    </ul>
</div>
VideoGame.cs
namespace Treehouse.Models
{
    // Don't make any changes to this class!
    public class VideoGame
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public string Description { get; set; }
        public string[] Characters { get; set; }
        public string Publisher { get; set; }
        public bool Favorite { get; set; }

        public string DisplayText
        {
            get
            {
                return Title + " (" + Publisher + ")";
            }
        }
    }
}

1 Answer

Joel Brennan
Joel Brennan
18,299 Points

OK I pass the test if I use the expression: @(Model.Favorite ? "Yes" : "No") I read more about it here: https://msdn.microsoft.com/en-us/library/ty67wk28.aspx I was writing the expression wrong.