2012-09-04 86 views
1

因此,我用WebGrid進行了這種主/細節設置。一切都很好,直到我嘗試使用RenderPage顯示詳細點擊記錄時:MVC3 RenderPage從不呈現內容

<div class="innerbox"> 
    @{ 
     if(gdEligibility.HasSelection){ 
      @RenderPage("~/Views/Eligibility/EligibilityPolicyDetailView.cshtml", 
       new { Customer = gdEligibility.SelectedRow }) 
     } 
    } 
</div> 

一切正常,如果我把一個破發點,我可以通過詳細視圖的CSHTML文件步驟沒有問題,沒有錯誤。但是外部div之間沒有任何東西可以呈現。永遠。爲什麼RenderPage不返回任何內容?我甚至嘗試在行尾添加.ToHtmlString(),但仍然沒有任何結果。

細節CSHTML:

@{ foreach(TravelInsurance.Models.Policy p in Page.Customer.Policies){ 

<fieldset> 
    <legend>Policy</legend> 

    <div class="display-label">Policy Number</div> 
    <div class="display-field"> 
     @Html.DisplayFor(model => p.PolicyNumber) 
    </div> 

    <div class="display-label">Premium</div> 
    <div class="display-field"> 
     @Html.DisplayFor(model => p.Premium) 
    </div> 
</fieldset> 
}} 
+0

你調用'@RenderPage()所包含的文件是什麼類型? –

+0

它在一個標準的mvc查看.cshtml文件 – InnerException

回答

0

This問題表明,RenderPage將使用父模型...

也許嘗試使用

@{Html.RenderPartial("EligibilityPolicyDetailView", new { Customer = gdEligibility.SelectedRow });} 

@Html.Partial("EligibilityPolicyDetailView" ,new { Customer = gdEligibility.SelectedRow }) 
+0

嘗試都沒有運氣。我結束了使用Telerik的webgrid,但我仍然不知道爲什麼這不起作用。 – InnerException

0

Pl。通過刪除網格定義中的屬性「ajaxUpdateContainerId」再次嘗試,它應該可以工作。