すべてのコントローラーのデフォルトの ViewBag.Title を変更しようとしているので、コントローラーから継承してそこでタイトルを処理する基本クラスを作成することについて考えました。
public class MyController : Controller
{
public MyController()
: base()
{
var controller = default(object);
if (RouteData.Values.TryGetValue("controller", out controller))
{
ViewBag.Title = controller;
}
}
}
次に、そのクラスをコントローラーから継承します。
public class GlobalSettingsController : MyController
{
しかし、ページを実行すると、RouteData が null であるため、null 参照例外が発生します。
どうしてヌルなの?そして、私は何ができますか?