1

こんにちは、クエリ文字列をリンクに渡そうとしていますが、次のように書きました。

@Html.ActionLink(subcategory,"Index" , "Products" , new { category = subcategory})

私が書いた方法では、これを受け取りましたが、actionName を認識していないようです:

http://localhost:2100/?Length=8

新しい { カテゴリ = サブカテゴリ} を削除すると、次のようになります。

http://localhost:2100/Products

ActionLink でやりたいことは、次のようなものを返すことです。

http://localhost:2100/Products/Index?substring=9
4

1 に答える 1

3

の間違ったオーバーロードを使用していHtml.ActionLinkます。これが、3 番目の引数がURL に"Products"なるルート値として解釈される理由です。?Length=8

補足として: は、1 つのプロパティを持ち、文字列の長さが 8 でLength=8ある型から来ています。stringLength"Products"

したがって、正しいオーバーロードの 1 つを使用する必要があります。

@Html.ActionLink(subcategory, //link text
                 "Index", //action name
                 "Products", //controller name
                 new { category = subcategory}, //route values
                 null // html attributes
                )
于 2012-12-25T11:24:07.200 に答える