如何获得值在针对一个特定的索引在mvc列表

本文关键字:一个 索引 列表 mvc 何获得 | 更新日期: 2023-09-27 18:12:40

问题是我想在列表中执行CRUD,但它与实体框架不一样。金迪指导我如何执行Get id和执行编辑操作对它相同的细节和添加。
<视图/strong>

    <table>
               <tr>
               <th>Product name</th>
            <th>Quantity</th>
           <th>Unit Price</th>
           <th>Line Total</th>                                                      
           </tr>
 @foreach (var item in Model)
     {
     <tr>
    <td>@item.Product_Name</td>
         <td>@item.SalesOrder_Quantity</td>
            td>@item.Unit_Price</td>
                                <td>@item.SalesOrder_Total</td>
                                <td>
                                    @Html.ActionLink("Edit", "Edit", new{ id = Model.ToList().IndexOf(item) }) |
                                    @Html.ActionLink("Details", "Details", new { id = Model.ToList().IndexOf(item) }) |
                                    @Html.ActionLink("Delete", "Delete", new { id = Model.ToList().IndexOf(item) })
                                </td>
                            </tr>
               }
控制器

 public class CreateSOController : Controller
   {
    Hisaab_ApplicationEntities db = new Hisaab_ApplicationEntities();
    static List<SalesOrddrDetail_ViewMode> row_list = new        List<SalesOrddrDetail_ViewMode>();
    // GET: CreateSO
    public ActionResult Index()
    {
        return View(row_list);
    }
    [HttpPost]
    public ActionResult Insert(SalesOrddrDetail_ViewMode salesViewModel)
    { 
          row_list.Add(salesViewModel);
          return RedirectToAction("Index",salesViewModel);
    }
         Here i havethe issue
    public ActionResult Edit(int id)
    {
         row.list.find(id) it show error here 
        return PartialView();
    }

如何获得值在针对一个特定的索引在mvc列表

@Html.ActionLink("Edit", "Edit", new{ id = Model.ToList().IndexOf(item) }) |
@Html.ActionLink("Details", "Details", new { id = Model.ToList().IndexOf(item) }) |
@Html.ActionLink("Delete", "Delete", new { id = Model.ToList().IndexOf(item) })

这部分代码是不正确的。不需要在Model中获取项目的索引,因为在视图中已经有一个foreach循环将每个项目分离出来。

你所要做的就是:

@Html.ActionLink("Edit", "Edit", new{ id = item.ID }) |
@Html.ActionLink("Details", "Details", new { id = item.ID }) |
@Html.ActionLink("Delete", "Delete", new { id = item.ID })

我希望这对你有帮助!

为什么使用@Html.ActionLink("Edit", "Edit", new { id = Model.ToList().IndexOf(item) }) ?

像这样使用:

@Html.ActionLink("Edit", "Edit", new { id = @item.id })