2

私は URL を持っています: http://localhost:XXXX/Details/569

短くしたい: http://localhost:XXXX/569

現在私は持っています:

routes.MapRoute(
    "Default",
    "{controller}/{action}/{id}",
    new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

では、整数値が入力されたときに HomeController の Details 関数に渡されるように、ルートにどのような変更を加えますか。

public ActionResult Details(int recordID)
{
    /** Code Here **/
    return View();
}

編集: エラーのキャッチ

また、アプリケーションで発生したエラーをどのようにキャッチできますか? エラー ダンプを表示するのではなく、「おっと!何かが壊れた!」という「いい」メッセージを表示したいと考えています。

4

1 に答える 1

3

このルートをデフォルトのルートの前に追加します。数字のみを含む URL が HomeController の Details アクションを呼び出すようにします。

routes.MapRoute(
    "RecordDetails",
    "xxxx/{RecordID}",
    new { controller = "Home", action = "Details", RecordID=0 },
    new { RecordID = @"\d+" });
于 2011-01-29T19:19:42.167 に答える