ASP.NET MVC Preview 4 を使用していますが、フォーム送信にルーティング エンジンを使用する方法を知りたいです。
たとえば、次のようなルートがあります。
routes.MapRoute(
"TestController-TestAction",
"TestController.mvc/TestAction/{paramName}",
new { controller = "TestController", action = "TestAction", id = "TestTopic" }
);
そして、次のようなフォーム宣言:
<% using (Html.Form("TestController", "TestAction", FormMethod.Get))
{ %>
<input type="text" name="paramName" />
<input type="submit" />
<% } %>
これは次のようにレンダリングされます:
<form method="get" action="/TestController.mvc/TestAction">
<input type="text" name="paramName" />
<input type="submit" />
</form>
フォーム送信の結果の URL は次のとおりです。
localhost/TestController.mvc/TestAction?paramName=value
このフォーム送信ルートを次の目的の URL にルーティングする方法はありますか?
localhost/TestController.mvc/TestAction/value
私が考えることができる唯一の解決策は、リクエストパラメーターをチェックするだけの別のアクションを作成するか、Javascript を使用することです。