@model SceneEditViewModel @{ var status = Model.RevisionStatuses.FirstOrDefault(x => x.Value == Model.RevisionStatusID.ToString())?.Text ?? "Not set"; var pov = Model.CharacterOptions.FirstOrDefault(x => x.Value == Model.POVCharacterID?.ToString())?.Text ?? Model.SceneCharacters.FirstOrDefault(x => x.RoleInSceneTypeName?.Contains("POV", StringComparison.OrdinalIgnoreCase) == true)?.CharacterName ?? "No POV character"; var purposeLabels = Model.ScenePurposeTypes .Where(x => Model.SelectedPurposeTypeIds.Contains(x.ScenePurposeTypeID)) .Select(x => x.PurposeName) .ToList(); var sceneType = purposeLabels.FirstOrDefault() ?? "No scene type set"; var primaryLocation = Model.LocationOptions.FirstOrDefault(x => x.Value == Model.PrimaryLocationID?.ToString())?.Text?.Trim() ?? "No primary location"; var timeLabel = !string.IsNullOrWhiteSpace(Model.RelativeTimeText) ? Model.RelativeTimeText : Model.StartDateTime?.ToString("d MMM yyyy HH:mm") ?? "Time not set"; }

Overview

@(string.IsNullOrWhiteSpace(Model.SceneTitle) ? "Untitled scene" : Model.SceneTitle)

Position
Chapter @Model.Chapter?.ChapterNumber, Scene @Model.SceneNumber
Revision status
@status
POV character
@pov
Scene type
@sceneType
Date/time
@timeLabel
Primary location
@primaryLocation
Synopsis @if (string.IsNullOrWhiteSpace(Model.Summary)) {

No synopsis has been added yet.

} else {

@Model.Summary

}