0

私はこのコードを介してウェブグリッドを持っています

@grid.GetHtml(
                        tableStyle: "webgrid",
                        columns: grid.Columns(
                        grid.Column(header: "Link", style: "labelcolumn", format: (item) => Html.ActionLink("Edit Item", "EditQueue", new { id = item.QueueID})),
                        grid.Column("Description", "Description"),
                        grid.Column("QueueDate", "QueueDate"),
                        grid.Column("Note", "Note"),
                        grid.Column("Status", "Status"),
                        grid.Column("LastUpdated", "LastUpdated")
                            )
                    )

ID 1のテストケースを作成しました。次に、最初の列のリンクをクリックします。/ Home / EditQueue / 1にこのページを作成していないため、404エラーが発生します

しかし、私は明らかに各番号のページを作成したくありません。渡したIDだけを表示するページを作成するためのベストプラクティスは何ですか?

4

2 に答える 2

1

idHomeControllerで、パラメーターとしてを受け入れるアクションメソッドを作成します

public ActionResult EditQueue(int id)
{
    //Get the details of queue using id and return a view.
    return View();
}

編集するデータを表示したい場合があります。したがって、IDを使用してデータを取得し、それを返します。

public ActionResult EditQueue(int id)
{
    //Get the details of queue using id and return a view.
    Queue queue=repositary.GetQueueFromID(id);
    return View(queue);
}

メソッドがクラスオブジェクトrepositary.GetQueueFromIDを返し、 View( )がそれに強く型付けされていると仮定します。QueueEdit.cshtml

于 2012-12-13T17:17:08.743 に答える
0

コントローラに渡すパラメータを使用してメソッドを作成するだけです。

于 2012-12-13T17:13:58.173 に答える