1

部分ビューに文字列を送信するにはどうすればよいですか?

私が望むのは、表示されているモデルに関する情報を部分ビューに送信することです。このようなもの:

@{Html.RenderPartial("_PhaseCreate", new Phase(), @Model.Id );}

これは可能ですか?

4

1 に答える 1

2

モデルまたはビューにないデータを送信する場合は、次のようなものを使用する必要があります。

1) の代わりに@Html.Partial()@Html.Action("ActionName", "Controller", routeValues: new { id = Model.Id })ヘルパーを使用します。

2) 次のようなものをコントローラーに追加します。

public ActionResult GetMyView(int id)
{
    ViewBag.Phase = new Phase();
    ViewBag.Id = id;
    // also whatever which doesn't in model ...

    return View("_PhaseCreate");
}

部分的なビューでは、それらの情報を宣言するのと同じように使用できます。

<label>@ViewBag.Id</label>

モデルとビューに存在するデータを追加する必要がある場合は、次を使用することもできます。

@Html.Partial("_PhaseCreate", 
              new ViewDataDictionary(new { Phase = new Phase(), Id = Model.Id }))

次のように使用します。

<label>@ViewData["Id"].ToString()</label>
于 2013-08-08T09:03:11.157 に答える