值绑定到cshtml中的属性

时间:2016-10-22 08:47:30

标签: c# asp.net-mvc razor displayfor

我有一个具有2个属性的视图模型:一个是项目列表对象的列表,另一个是订单类的对象。我想显示从商品中计算的价格总和'列表order.price

以下是视图模型:

public class PlaceOrderViewModel
{
    public Orders Order { get; set; }
    public List<Items> Items { get; set; }
}

这是项目模型:

public class Items
{
    public long Id { get; set; }
    public long OrderId { get; set; }
    public int ItemType { get; set; }
    public string Detail { get; set; }
    public int ItemsCount { get; set; }
    public int Price { get; set; }
}

我正在寻找类似的东西,

@Html.DisplayFor(model => model.Order.Price, new { Value = @Model.Items.Sum(s => s.Price)})

我确实试过了,但这对我没用。

我想将sum值与order.price属性绑定。 有什么帮助吗?

1 个答案:

答案 0 :(得分:1)

假设你有这个:

public class Order
{
    public int Id { get; set; }
    public List<Items> Items { get; set; }
    ...
    public int TotalPrice 
    {
        get
        {
             return Items == null ? 0 : Items.Sum(p => p.Price);
        }
    }
}

在你看来应该有:

@Html.DisplayFor(model => model.Order.TotalPrice)