簡體   English   中英

對象引用未設置為對象的實例-部分視圖

[英]Object reference not set to an instance of an object - Partial View

我有一個強類型的局部視圖,當啟動主視圖時,它給我“對象引用未設置為對象實例”錯誤。 我知道我尚未傳遞任何參數,但是有沒有辦法處理此錯誤?

主視圖:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    Test Form
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

<div id="partial">
<% Html.RenderPartial("DisplayPartial"); %>
</div>

</asp:Content>

部分視圖:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<Student.Models.vwStudent>>" %>

<% foreach (var item in Model) {
           if (item == null) continue; %>

        <tr>            
            <td>
                <%: item.Item1%>
            </td>
            <td>
                <%: item.Item2%>
            </td>
        </tr>

    <% } %>

    </table>

您必須將一些Model傳遞給partialView,因為它需要IEnumerable<Student.Models.vwStudent>的實例

<% Html.RenderPartial("DisplayPartial", model); %>

或者,您可以在局部視圖中檢查模型是否不為null。

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<Student.Models.vwStudent>>" %>


<% if (Model != null) {
     foreach (var item in Model) {
           if (item == null) continue; %>

        <tr>            
            <td>
                <%: item.Item1%>
            </td>
            <td>
                <%: item.Item2%>
            </td>
        </tr>

    <% }
} %>

    </table>

如果您在沒有模型時需要呈現此局部視圖,則可以肯定地在foreach循環之前測試Model不為null

if (Model != null)
    foreach (...)

暫無
暫無

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

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