2

次のような設定があるとしましょう:

public ActionResult Create(int someUnrelatedNumber)
{
 ...
    return View();
}

[Post]
public ActionResult Create(SomeModel model, int someUnrelatedNumber)
{
 ...
}

「SomeModel」と「someUnrelatedNumber」を含むビューモデルを作成せずに、それらの間で「someUnrelatedNumber」を渡す方法はありますか?

4

1 に答える 1

2

ViewBag(またはあなたがやろうとしていることを理解している場合はTempData)を使用することもできますが、可能な限り強く型付けされたビューモデルに傾倒する傾向があります。

http://rachelappel.com/when-to-use-viewbag-viewdata-or-tempdata-in-asp.net-mvc-3-applications

モデルバインダー側では、通常、バインディングを正しく処理しますが、SomeModelと個別のsomeUnrelatedNumberの両方をバインディングするためのヒントを提供する必要がある場合があります。ビューで次のようなもの。

<input type="hidden" name="someUnrelatedNumber" value="123" />
<input type="text" name="model.SomeRelatedNumber" value="123" />

等...

于 2012-04-24T07:44:33.670 に答える