別のページを開くときに、デフォルトのページを呼び出すMVC?

StackOverflow https://stackoverflow.com/questions/495774

  •  20-08-2019
  •  | 
  •  

質問

私は、セットアップの簡単なMVC(RC1)アプリを持っている、と私はいくつかの奇妙な行動を見ています。ホーム/インデックスページには、リストビューを使用してアイテムのリストが表示されます。ここにHomeControllerコードがあります:

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

ホーム/ Index.aspxページがちょうどその上にListViewコントロールを持っており、背後にあるコードは、これを持っています:

Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    MyListView.DataSource = ViewData("results")
    MyListView.DataBind()
End Sub
ホーム/インデックスに移動するとき、

これは正常に動作します。しかし、私は、フォームと呼ばれる別のビューとコントローラを持っています。それは今だけのスタブですので、ここでFormControllerです。

Function Index()
    Return View()
End Function

フォーム/ Index.aspxは、背後には、コードを持っていない - 。再び、ちょうどスタブ

私が見ている問題は、私は/インデックス型に移動しようとすると、私が得ることである「オブジェクト参照がオブジェクトのインスタンスに設定されていません。」ホーム/ Index.aspx.vbの背後にあるコードに。どうしてこれなの?私は、そのページから移動しようとしている - なぜそれが背後にあるコードを実行しようとしていますか?私はこのようなコードをラップしている場合:

If ViewData("results") IsNot Nothing Then
    MyListView.DataSource = ViewData("results")
    MyListView.DataBind()
End If
私はそれを行う必要がありますように

すべての機能が正しく、それはいないようです。私は何かが足りないのですか?

更新:リクエストごとに、こちらのフォーム/ 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>
役に立ちましたか?

解決

この権利ですか?

Inherits="ProviderFeedback.Index"

それはForm.Indexではないでしょうか?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top