私は MVC ランドに不慣れで、作業中のアプリを持っています。グローバルに 2 つのルートを持つ 2 つの異なるリンクがあり、これらはかなり似ています
ルート1
routes.MapRoute("Category", "Movies/{category}/{subcategory}",
new { controller = "Catalog", action = "Index", category = "", subcategory = "" });
ルート 2
routes.MapRoute("Movie", "Movie/{movie}",
new { controller = "Movie", action = "Index", movie = "" });
最初のルートのアクションリンクを呼び出すと、そうすべきだと思うように作成されます:
.../Movies/Category/SubCategory
ただし、2番目のリンクを作成すると、次のように入力されます:
.../Movie?movieId=ff569575-08ec-4049-93e2-901e7b0cb96a
以前はGUIDの代わりに文字列を使用していましたが、それでも同じことをしていました
.../Movie?movieName=Snatch
私のアクションリンクは次のように設定されています
<%= Html.ActionLink(parent.Name, "Index", "Catalog",
new { category = parent.Name, subCategory = "" }, null)%>
<%= Html.ActionLink(movie.Name, "Index", "Movie",
new { movieId = movie.MovieId }, null)%>
私のアプリはまだ動作しますが、この動作は奇妙だと思いました。どんな助けでも素晴らしいでしょう。
ありがとう!