2016-03-01 2 views
0

Ниже мой взгляд.Как решить System.Collections.Generic.List не имеет разницы для ProductID или метода для ProductID?

@model List<EShopperTheme.Domain.Entities.Product> 
@using System.Linq 
@foreach (var item in Model) 
{ 
    <div class="col-sm-4"> 
     <div class="product-image-wrapper"> 
      <div class="single-products"> 
       <div class="productinfo text-center"> 

         <!--Add to Cart Button Here--> 
         @using (Html.BeginForm("AddToCart", "Cart")) 
         { 
          @Html.HiddenFor(x => x.ProductID) 
          @Html.Hidden("returnUrl", Request.Url.PathAndQuery) 
          <input type="submit" class="btn btn-default add-to-cart" value="Add to cart" /> 
         } 
        </div> 
       </div> 
      </div> 
     </div> 
    </div> 
} 

я получаю вышеуказанную ошибку, когда я запустить приложение, я добавил @ using.linq тоже, но это не решило проблему я все еще получаю эту ошибку.

ответ

2

Вы должны изменить свой скрыто, чтобы быть @Html.HiddenFor(x => item.ProductID).

У вас есть доступ к объекту, который не существует в System.Collections.Generic.List, который является вашей моделью, но вам нужно получить доступ к текущему item, который вы итерируете для Код товара.

+0

Ты такой великий талант, где ты узнал все это? лол –

0

Я думаю, что это следует сделать трюк (Вы должны поставить @ перед вашим использованием пункта): <img src="@Url.Action("GetMainPicture", "Product", new { @item.ProductID })" alt="" />

Заменить все использование элемента с @item внутри цикла Еогеаспа

+0

У меня нет проблем с этим у меня проблема в добавлении в корзину –

+0

см. Обновленный вопрос –

+0

Как выглядит ваш класс Product? – andreasnico

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