0

私はこのルートを持っています:

routes.MapRoute(
  name: "Task",
  url: "Projects/{projectID}/Tasks/{action}/{id}",
  defaults: new { controller = "Tasks", action = "Index", id = UrlParameter.Optional }
);

リンクを作成したい:

@Html.ActionLink("Add task", "Create", "Tasks", new { projectID = 5 })

しかし、私は得ます(私はプロジェクトのインデックスビューにいます):

http://localhost:25814/Projects/Create?Length=5

私が使うとき

@Html.ActionLink("Add task", "Create", new { controller = "Tasks", projectID = 5 })

私は正しいURLを取得します:

http://localhost:25814/Projects/5/Tasks/Create

なぜ違いがあるのか​​ わかりません...このシグネチャを持つヘルパーメソッド:

(string linkText, string actionName, string controllerName, object routeValues)

存在します!では、なぜ簡単な方法を使用できないのでしょうか。

4

0 に答える 0