使用模型c#mvc4返回局部视图

时间:2014-03-02 05:19:30

标签: c# asp.net-mvc asp.net-mvc-4 asp.net-ajax

我正在返回部分视图,但部分视图未显示在我的特定页面部分上。我正在返回一个模型。任何人都可以在我的代码中看到问题吗?因此,我只得到部分视图。如何在我的主页_CartListing上嵌入CartManager部分视图?

    public ActionResult CartManager()
    {
        string user = "jaddu";

          FoodContext db = new FoodContext();

          List<CartListing> fd = (from e in db.FoodItems
                                  join o in db.Carts on e.itemid equals o.itemid 
                                  where o.username==user
                                  select new CartListing 
                                  {
                                   ItemId=e.itemid,
                                   CartId=o.cartid,
                                   Itemname =e.itemname,
                                   Amount =o.amount,
                                   Price=(float)(e.price*o.amount),

                               }).ToList();


          CartModel vm = new CartModel { CartListings = fd };

          return PartialView("_CartListing",vm);

CartManager查看

<div class="mycontainer">

    <div id="mydiv">
      @{Html.Action("CartManager","Cart");}    
    </div>

</div> 

_CartListing Partial View

@model CartModel
<table width="100%">
    <tr bgcolor="#E4E4E4">
        <th style="padding-left:20px;">
        FoodIem
        </th>
        <th  style="padding-left:20px;">
      Quantity
        </th>
        <th style="padding-left:20px;">
        Price
        </th>
       <th></th>
    </tr>
    @{
        int i = 0;
        string k;
    }
     @foreach (CartListing ct in Model.CartListings)
     {
         i = i + 1;
   using (Ajax.BeginForm("DeleteCart", "Cart", new { cartid = ct.CartId }, new AjaxOptions()
{
    HttpMethod = "Post",
    OnSuccess = "onSuccess",
    UpdateTargetId = "mydiv"
}, new {id="Form"+i }))
{
<tr>
<td style="padding-left:20px;">
@ct.CartId
</td>
<td style="padding-left:20px;" >
@ct.Amount
</td>
<td style="padding-left:20px;">
@ct.Price
</td>

<td>
<input type="submit" value="delete" id="delete_@i"/>
</td>
</tr> 
}

     }
 <tr bgcolor="#E4E4E4"><td></td><td></td><td></td><td></td></tr>
</table>

1 个答案:

答案 0 :(得分:2)

在CartManager视图中而不是:

@{Html.Action("CartManager","Cart");}

尝试

@{Html.RenderAction("CartManager","Cart");}