2012-04-02 4 views
0

Я пытаюсь показать цену в файле индекса. Однако он показал пустое поле. Что случилось с моей кодировкой? Не могли бы вы мне помочь? это должна быть легкая проблема. Но я не могу его найти. Если вы дадите некоторую обратную связь, я действительно благодарю вас!MVC3 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="[email protected]"> 
     <td> 
      @Html.ActionLink(item.Product.model, "Details", "Store", new { id = item.productId }, null) 
     </td> 
     <td> 
      //here!! is it wrong? 
      @ViewBag.eachPrice 
     </td> 
     <td id="[email protected]"> 
      @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> 
} 
+1

код, как он выглядит, он должен работать, вы пробовали отлаживать представление и посмотреть, есть ли это значение? – Yasser

ответ

-1

Устранена ошибка Не знаю почему, прежде чем она не сработает. В любом случае, спасибо вам, ребята, за ответ!

0

В VB, я делаю это так:

@code 
    Dim price = viewbag.price 
@End code 

, а затем отобразить значение, где я хочу

@Html.Raw(price) 

В cs, я думаю, вы должны поставить «var» вместо «Dim», а finis h инструкция с символом ";"

+1

В C# (не уверен в VB, но я полагаю, что они работают одинаково), как правило, не имеет значения, используете ли вы @ ViewBag.price или если вы сначала сохраните его в переменной. –

+0

Он никогда не работал для меня так, как вы его описываете. Но я, возможно, тоже сделал что-то не так (у меня почти нет опыта работы в .Net) –

+0

asp.net mvc хранит заголовок в сумке просмотра, и обычно я хочу иметь тот же заголовок в верхней части страницы, поэтому я использую '

@ViewBag. Заголовок

'. Проблема здесь не должна быть иной. –

Смежные вопросы