3 回答
TA贡献1942条经验 获得超3个赞
请按照以下步骤获取 viewbag 列表值。
在 foreach 循环之前定义一个计数器。
根据计数器获取项目。
增加计数器。
像这样
@int i=0; //counter
@foreach (var item in Model)
{
<tr>
<td>@ViewBag.Calc[i]</td> //get item from the list basis of counter.
@i++; //increase conter value
</tr>
}
或者,您可以向模型添加新属性并在视图包的位置设置该属性,并像使用模型的其他属性一样使用。
TA贡献1744条经验 获得超4个赞
您可以在模型中使用属性名称总计(例如:数量、当前价格)并为其分配总值。或者您可以ViewBag.Calc用作数组,但我认为如果您确实使用数组,它也可能导致问题。制作一个十进制类型的列表或类似的东西:
List <decimal> total = new <decimal>();
foreach (var item in quantity_price)
{
var quantity = item.Quantity.ToString();
var double_quantity = Convert.ToDouble(quantity);
var double_price = Convert.ToDouble(item.Current_price);
var calc = double_quantity * double_price;
total.add(calc)
}
ViewBag["calc"] = total;
鉴于:
@int count=0;
@foreach (var item in Model)
{
<tr>
<td>@ViewBag.Calc[count]</td>
@count++;
</tr>
}
TA贡献1848条经验 获得超2个赞
假设您想要的是所有商品的总价,您需要为每个商品添加一个变量,然后将总价添加到 viewbag。
double total = 0;
foreach (var item in quantity_price)
{
var quantity = item.Quantity.ToString();
var double_quantity = Convert.ToDouble(quantity);
var double_price = Convert.ToDouble(item.Current_price);
var calc = double_quantity * double_price;
total += calc;
}
ViewBag.Calc = total;
- 3 回答
- 0 关注
- 491 浏览
添加回答
举报