0

私の見解は次のとおりです。

@using (Html.BeginForm("Index", "ToolsForHire", FormMethod.Get))
{

    <p>tool required: @Html.TextBox("tool")</p>
    <input type="submit" value="search" />
}

このフォームを送信すると、次の宛先に投稿されます。

localhost:54124/ToolsForHire?tool=mytooltext

それはすべてうまくいきます。

しかし、私がしたいのは、私のURLが最終的に次のようになることです:

localhost:54124/ToolsForHire/mytooltext

まだ mvc に慣れていないので、アドバイスをいただけませんか?

4

2 に答える 2

1

次の BeginForm 拡張メソッドBeginForm(action, controller, routevalues, FormMethod)を使用することをお勧めします。

ルート値が次のようなものである場合

new {tool = mytooltext}

一般に、デフォルトのルーティングは id オプション パラメータを期待するように設定されているため、ルーティング値が

@using (Html.BeginForm("Index", "ToolsForHire", new {id = mytooltext}, FormMethod.Get))

URL の結果は http://localhost/ToolsForHire/[mytooltext の値] になります。

お役に立てれば。

于 2013-07-20T18:26:21.777 に答える
0

global.ascx.cx ファイルの URL 書き換えを変更する必要があります

于 2013-07-20T18:16:31.237 に答える