仕事中に、URL 書き換えの問題を 1 つ解決しなければなりません。テンプレートとして URL を使用する必要があります。
{controller}/{action}-{id}
それ以外の
{controller}/{action}/{id}
処理された URL は次のようになります。
myController/myAction-128
ここで、128 はパラメータです
私のルートマップ:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
routes.MapRoute(
name: "NewRoute", // Route name
url: "{controller}/{action}-{id}/{extId}", // URL with parameters
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional, extId = UrlParameter.Optional } // Parameter defaults
);
}
コントローラーコード:
[HttpGet]
public ActionResult DocumentDetails(int? id)
{
if (doc.HasValue)
{
...
}
}
このルートでは、成功した結果は得られません。まだ 404 エラーがあります。「-」の代わりに / を使用すると、すべて問題ありませんが、JS View 環境が機能しません。
これを修正するために何かできることはありますか? すべての助けに感謝します、ありがとう。