Specifying different _layout
Closed this issue · 0 comments
Deleted user commented
I'm trying to load a different layout (not the one in ~/shared/ )
var viewPath = System.Web.HttpContext.Current.Server.MapPath("~/views/users/" + page.Domain + "/" + page.ControllerName + "/index.cshtml");
var LayoutviewPath = System.Web.HttpContext.Current.Server.MapPath("~/views/users/" + page.Domain + "/_layout.cshtml");
var templateHtml = System.IO.File.ReadAllText(viewPath);
var layoutHTML = System.IO.File.ReadAllText(LayoutviewPath);
var rm = new RazorMachine();
rm.RegisterTemplate("~/users/" + page.Domain + "/_layout.cshtml", layoutHTML);
m.RegisterTemplate("~/users/" + page.Domain + "/" + page.ControllerName + "/index.cshtml", templateHtml);
ITemplate template = rm.Execute("~/users/" + page.Domain + "/" + page.ControllerName + "/index.cshtml", page);
return new HtmlString(template.Result);
index
@model dynamic
<h1>@Model.Title</h1>
<a href="@Model.FriendlyUrl">@Model.FriendlyUrl</a>
<div>
@Model.Content
</div>
layout
<html>
<head>
<title></title>
</head>
<body>
@RenderBody()
</body>
</html>
But it keeps loading the one in the shared folder and not the one i specified. :(
Am i missing something ?