MVC3 ViewBag不起作用

时间:2012-04-02 07:33:10

标签: asp.net-mvc-3 viewbag

我正在尝试在索引文件中显示价格。 但是,它显示空白字段。我的编码有什么问题? 你可以帮帮我吗?这应该是容易的问题。但我找不到它。 如果你给出一些反馈,我真的非常感谢你!

 public ActionResult Index(decimal priceValue)
    {
        var cart = ShoppingCart.GetCart(this.HttpContext);

        // Set up our ViewModel
        decimal price = priceValue;
        ViewBag.eachPrice = price;
        var viewModel = new ShoppingCartViewModel
        {
            CartItems = cart.GetCartItems(),
            CartTotal = cart.GetTotal(price)
        };

        // Return the view
        return View(viewModel);
    }

Index.cshtml

@foreach (var item in Model.CartItems)
{
    <tr id="row-@item.recordId">
        <td>
            @Html.ActionLink(item.Product.model, "Details", "Store", new { id = item.productId }, null)
        </td>
        <td>
            //here!! is it wrong?
            @ViewBag.eachPrice
        </td>
        <td id="item-count-@item.recordId">
            @item.count
        </td>
        <td>
            @item.dateCreated.Date.ToString("dd MMM yyyy")
        </td>
        <td>
            @*how about using some model instead of number?*@
            @item.dateCreated.Date.AddDays(2).ToString("dd MMM yyyy")
        </td>
        <td>
        </td>
        <td>
            <a href="#" class="RemoveLink" data-id="@item.recordId">
            Remove from cart</a>
        </td>
    </tr>
}

2 个答案:

答案 0 :(得分:0)

在VB中,我这样做:

 @code
   Dim price = viewbag.price
 @End code

然后,我显示我想要的值

 @Html.Raw(price)

在cs中,我认为你必须用“var”代替“Dim”,然后用“;”完成指令。

答案 1 :(得分:-1)

解决了错误我不知道为什么它不起作用.. 无论如何,谢谢你们回复!