在我的Global.asax.cs文件中,我创建了一个Session_Start方法:
protected void Session_Start(object sender, EventArgs e)
{
//Get the incoming user's IP address.
var ip = HttpContext.Current.Request.UserHostAddress;
if (Helpers.RedirectHelpers.IpIsWithinBoliviaRange(ip))
{
//Render the bolivia page.
}
else
{
//Render the regular layout page.
}
}
假设IpIsWithinBoliviaRange()
方法中的代码已编码并正常工作,如何重定向请求以便用户透明地看到我编码的页面?
以下是解决方案的快照,以便您获得更好的图片:
_Layout.cshtml的内容是您所期望的,没有任何异常。
在_BoliviaLayout.cshtml文件中,我做了不同的事情:
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<title>BOLIVIA PAGE</title>
</head>
<body>
<div>
</div>
</body>
</html>
如果来自玻利维亚的人访问该网站,我如何呈现此页面?我需要做些什么来调用此&#34;视图&#34;?
的渲染答案 0 :(得分:1)
您应该在~/Views/_ViewStart.cshtml
@{
Layout = Helpers.RedirectHelpers.IpIsWithinBoliviaRange(Request.UserHostAddress) ? "~/Views/Shared/_BoliviaLayout.cshtml" : "~/Views/Shared/_Layout.cshtml";
}