Domanda

Ho installato una semplice app MVC (RC1) e vedo alcuni comportamenti strani. La pagina Home / Indice mostra un elenco di elementi usando un ListView. Ecco il codice HomeController:

Function Index()
    ViewData("results") = From m In context.MyTable
    Return View()
End Function

La pagina Home / Index.aspx ha solo un ListView su di essa, e il codice dietro ha questo:

Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    MyListView.DataSource = ViewData("results")
    MyListView.DataBind()
End Sub

Funziona bene quando si naviga su Home / Indice. Tuttavia, ho un'altra vista e controller chiamato Form. È solo uno stub in questo momento, quindi ecco FormController:

Function Index()
    Return View()
End Function

Form / Index.aspx non ha codice dietro - di nuovo, solo uno stub.

Il problema che vedo è che quando provo a navigare in Form / Index, ottengo " Il riferimento all'oggetto non è impostato su un'istanza di un oggetto. " sul codice dietro Home / Index.aspx.vb. Perchè è questo? Sto cercando di allontanarmi da quella pagina - perché sta cercando di eseguire il codice dietro? Se avvolgo il codice in questo modo:

If ViewData("results") IsNot Nothing Then
    MyListView.DataSource = ViewData("results")
    MyListView.DataBind()
End If

tutto funziona correttamente, ma non sembra che dovrei farlo. Mi sto perdendo qualcosa?

Aggiornamento: per richiesta, ecco il contenuto di Form / Index.aspx:

<%@ Page Title="" Language="VB" MasterPageFile="~/Views/Shared/Site.Master" AutoEventWireup="false" CodeBehind="Index.aspx.vb" Inherits="ProviderFeedback.Index" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
    <h3>
        Enter Provider Feedback
    </h3>
    <form method="post" action="/Form/CreateNew">
        <%=Html.TextBox("member")%>
        <input type="submit" value="Submit" />
    </form>
</asp:Content>
È stato utile?

Soluzione

È giusto?

Inherits="ProviderFeedback.Index"

Non dovrebbe essere Form.Index?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top