1

.NET MVCアプリケーションでErrorControllerを構成しようとしていますが、現在コントローラーでアクションを実行できません。そのため、global.asaxにURLルートを登録する必要があるためと思われます。

エラーコントローラは次のとおりです。

public class ErrorController: Controller
{

    /*Default Redirect Error Page*/
    public ActionResult Index()
    {
        return View();
    }
    /*Generic Error Page*/
    public ActionResult Generic()
    {
        return View();
    }
    /*Status Code: 400*/
    public ActionResult NotFound()
    {
        return View();
    }
}

上記のアクションは、それぞれ以下のURLで呼び出せるようにしたいと思います。

〜/ Error /
〜/
Error / Generic〜/ Error / NotFound

Global.asaxファイルで、次のようなものを使用してこれらのルートを登録する必要があると思います。

routes.Add(new Route("error/{action}", new MvcRouteHandler())){controller = "Error", action = "";

このための正しいルートハンドラーを追加/指定するにはどうすればよいですか?

4

1 に答える 1

2

global.asaxで提供されているデフォルトのURLがあなたのURLで機能すると思いますが、特定のURLが必要な場合は、次のURLを選択してください。

routes.MapRoute(
      "Error", // Route name
      "error/{action}", // URL without parameters
       new { controller = "Error", action = "Index" }, // Parameter defaults
);

パラメータが必要な場合:

routes.MapRoute(
      "Error", // Route name
      "error/{action}/{param}", // URL with parameters
       new { controller = "Error", action = "Index", param = UrlParameter.Optional }, // Parameter defaults
);
于 2011-08-02T16:09:32.393 に答える