簡體   English   中英

使用參數加載局部視圖

[英]Load partial view with parameters

我正在嘗試在“ Bootstrap模型”中加載帶有Id參數的局部視圖

我無法將參數傳遞給控制器

像這樣:

<td>
    <button class="btnShowModal btn btn-primary btnWhiteSpace " type="button">
        Details
        <i class="fas fa-info-circle" aria-hidden="true"></i>
    </button>
</td>

<div class="modal fade" tabindex="-1" id="loginModal"
     data-keyboard="false" data-backdrop="static">
    <div class="modal-dialog modal-sm ">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal">
                    <i class="fas fa-window-close"></i>
                </button>
                <h4 class="modal-title"> Title</h4>
            </div>
            <div class="modal-body ">
                <partial name=("bid", "details" asp-route-id="item.QuettaReqId" ) />
            </div>
        </div>
    </div>
</div>

我得到的錯誤是:

InvalidOperationException:未找到部分視圖'('。搜索了以下位置:
查看/郵件/(CSHTML
/Views/Shared/(.cshtml
/Pages/Shared/(.cshtml

看起來像路由,但我認為該參數的設置也未如預期那樣通過。

嘗試這個:

@{ Html.RenderAction("YourActionName", "ControllerName", new { parameterName = parameterValue });}

因此,在您的情況下如下所示:

<div class="modal-body ">
  @{ Html.RenderAction("details", "bid", new { id= item.QuettaReqId});}
</div>

現在,如果您需要特定於ASP.NET Core的解決方案,則可以使用比Partial View快得多的View Components

為了將item.QuettaReqId從主視圖傳遞到局部視圖,您需要指定正確的局部視圖名稱和模型。

<div>
     <partial name="_Details" model="10"/>
     @await Html.PartialAsync("_Details", 5)
</div>

對於_Details ,您需要定義@model來接受參數。

@model int

This is Detail View with Id @Model

注意_Details是部分視圖名稱。

有關model更多信息,請檢查模型

由於asp.net引擎找不到視圖而導致的錯誤

你可以換成

@Url.Action("YourActionMethod", "Controller", new { param = "1", param2= "2" })

暫無
暫無

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

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