Kentico:如何根据文档类型字段重定向

时间:2010-11-12 07:00:05

标签: c# asp.net kentico

我在Kentico中有一个特定的文档类型,它有一个布尔字段,当我需要页面重定向到另一个URL时(在这种情况下是一个404页面)。

最好的地方在哪里?

如何在代码中访问kentico数据上下文,以便我可以编写拉取文档类型字段的代码并根据它重定向(因为当前尝试访问Dataitem(“MyFieldName”)错误,因为Kentico不使用DataItem用于数据绑定,即使Eval(“MyFieldName”)仍然有效。

2 个答案:

答案 0 :(得分:4)

您可以通过CMSContext对象访问Kentico上下文数据。

<%
    if ((bool)CMSContext.CurrentDocument.DataRow["MyFieldName"])
        Response.Redirect("PageNotFound.aspx");
%>

答案 1 :(得分:3)

如果您只想将页面重定向到另一个页面。 Kentico已经内置了一些内容,只需转到Page->Properties->Menu即可。在菜单操作部分,您可以指定重定向的URL。

否则,对于描述的要求,您可以通过以下方式获取布尔值:

if(ValidationHelper.GetBoolean(
    CMSContext.CurrentDocument.GetValue("MyFieldName"), false)))
{
    Response.Redirect("/404.aspx");
}