1

誰でもこの問題を解決できますか?次のルートリンクがあります:

 @Html.RouteLink(@item.strCountry, "WeatherCity", new {id=Regex.Replace(@item.strCountry, " ","-") })

私のRouteConfigには次のものがあります:

routes.MapRoute(
            name: "WeatherCity",
            url: "Cities-In/{id}",
           defaults: new { controller = "Weather", action = "Cities", id = UrlParameter.Optional }
            );

私のコントローラーには次のものがあります:

 public PartialViewResult Cities(string id) 

も試した

public ActionResult Cities(string id)

しかし、何をしても404エラーが発生します。

私は多くの例を試してみましたが、最後の例は次のとおりです。

http://davecowart.wordpress.com/2011/06/08/named-routes-in-asp-net-mvc-3/

これを機能させることができないため、ここで単純なものが欠けていますか?私はMVC4を使用しています。

どんな助けでもいただければ幸いです

ジョージ

4

1 に答える 1

2

私はあなたの問題を見つけたと思います(読者への参照:質問の下の「コメント」の会話)。

デフォルトルートのにあなたのroutes.MapRoute()ものを置くべきです。それ以外の場合は、デフォルト ルートが照合されて実行されます (MVC は後続のルート ルールの検索を停止します)。MVC は URL をデフォルト ルートと照合しますが、 DefaultControllerで対応するアクション ( ) を見つけられません。Cities

于 2013-01-30T00:47:22.310 に答える