簡體   English   中英

返回具有匹配ID(特定ID)的字段

[英]Return field with matching id's (specific id)

我有一個主從頁面,當您單擊請求上的查看詳細信息時,它將在下表中填充數據。 當用戶單擊請求上的查看詳細信息時,如何讓第二個表填充具有匹配ID的數據? 當我現在進行遍歷時,它會找到確實匹配的ID,但是如果我無法捕獲所選的項目ID並去查找具有相同ID的行,它們將全部匹配。

上表是請求,下表是請求詳細信息。

這是我的請求控制器中的代碼,可從請求詳細信息中獲取數據。 我正在查找ID,並嘗試將其與所選項目進行比較,但即時通訊仍會取回所有記錄。

 //Requests Controller 
public ActionResult Index(IA_RequestDetails iA_RequestDetails, IA_Requests iA_Requests, long? id = null)
{

    List<IA_Requests> requestList = db.IA_Requests.ToList();
    List<IA_RequestDetails> newRequestList = db.IA_RequestDetails.ToList();
    var model = new InventoryAnalysisMasterDetailsModel();
    model.RequestDetailsList = newRequestList;
    model.RequestList = requestList;

    if (id != null)
    {
        model.SelectedItems = newRequestList.Find(model => model.RequestId == id && model.SelectedItemsId == id);
        model.SelectedItemsId = id;         
    }

    return View(model);
}

我認為我正在使用foreach語句

foreach (var item in Model.RequestDetailsList)
{
    <tr>
        <td>
            @item.RequestId       
        </td>
        <td>
            @item.Item
        </td>
        <td>
            @item.LineID
        </td>
        <td>
            @Html.ActionLink("Edit Item", "Edit", new { id = item.LineID, controller = "IA_RequestDetails" }) |
            @Html.ActionLink("View Item Details", "Details", new { id = item.LineID, controller = "IA_RequestDetails" })
        </td>
    </tr>
}

很感謝任何形式的幫助。 謝謝。

這個問題讓我有些困惑,但是想提供幫助。 Find將返回單個Item,因此SelectedItems有點令人困惑。

您想要的是以下內容:

newRequestList.Where(model => model.RequestId == id && model.SelectedItemsId == id);

如最初的想法,where子句是我所需要的。 這只是我在哪里以及做什么的問題:在if語句中添加where子句。 相當簡單,對我來說有點麻煩。

model.RequestDetailsList = newRequestList.Where(x => x.RequestId == model.SelectedItemsId).ToList();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM