, ViewBag.
, OnActionExecuting ViewBag. BaseController, , ActionFilter.
_ViewStart switch ViewBag .
, ActionFilter, @ViewBag.Subdomain Razor, _ViewStart.cshtml.
public class AddSubdomainToViewDataAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
var subdomain = filterContext.HttpContext.Request.Url.Authority.Split('.').First();
var controller = filterContext.Controller as Controller;
controller.ViewData.Add("Subdomain", subdomain);
}
}
, [AddSubdomainToViewData].
, _ViewStart.cshtml - :
@{
Layout = "~/Views/Shared/" + ((@ViewContext.ViewData["Subdomain"] as String) ?? String.Empty) + "_layout.cshtml";
}
Razor.