我是 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 = "" });
当我为第一条路线调用 actionlink 时,它会按照我的想法创建它:
.../Movies/Category/SubCategory
但是,当我创建第二个链接时,它会像这样填充它:
.../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)%>
我的应用程序仍然有效,但我认为这种行为很奇怪。任何帮助都会很棒。
谢谢!