私は、ローカルの開発環境で取り組んできた MVC プロジェクトを持っています。
このリンクは奇妙な動作をしています:
@Html.ActionLink("Kindergarten", "GradeKTo5", "WhoAreYou", new { grade = "K" }, null)
ローカル: http://localhost:3095/WhoAreYou/GradeKTo5/K
開発: http://redacted.org/WhoAreYou/GradeKTo5?grade=K
ローカル環境で表示されるように動作させたいです。実際、{controller}/{action}/{grade} 形式の URL を提供すると、すべて正常に動作します。これが、ActionLink の使用で何かを台無しにしていると思わせる理由です。
別の部分的なビューでは、次のコード行があります。
@Html.ActionLink(department.Text, ViewContext.RouteData.Values["Action"].ToString(), "WhoAreYou", new { grade, dept = department.Value }, null)
私は何が欠けていますか?ある環境では同じコードでクエリ文字列の値がレンダリングされるのに、別の環境では適切なルート データの値がレンダリングされるのはなぜでしょうか?