To display a property without a model after submitting, you can simply break into HTML to display it:
@if (Model.Price != 0.0F)
{
<b>Price @Model.Price.ToString("0.00") </b>
}
, ViewModel:
public class ViewModel
{
private readonly System.Collections.Generic.List<IceCreamFlavor> _flavors;
public ViewModel()
{
}
public List<IceCreamFlavor> AllFlavors
{
get
{
return _flavors;
}
}
[Display(Name = "Favorite Flavor")]
public int SelectedFlavorId { get; set; }
public System.Web.Mvc.SelectList FlavorItems
{
get { return new System.Web.Mvc.SelectList(_flavors, "Id", "Name");}
}
}
:
@if (Model.AllFlavors.Any(f => f.Id == Model.SelectedFlavorId))
{
<b>Price @Model.AllFlavors.First(f => f.Id == Model.SelectedFlavorId).Price.ToString("0.00") </b>
}
, , Flavor ViewModel ( ). Flavors , JavaScript , .
onchange JavaScript/JQuery , . ( AJAX , ..)
, :
ViewModel:
public IceCreamFlavor SelectedFlavor
{
get
{
return _flavors.FirstOrDefault(f => f.Id == this.SelectedFlavorId);
}
}
:
@if (Model.SelectedFlavor != null)
{
<b>Price @Model.SelectedFlavor.Price.ToString("0.00") </b>
}