2010-11-12 78 views
1

我有一個Kentico中的某種文檔類型,它有一個布爾字段,當我需要頁面重定向到另一個URL(本例中爲404頁面)時爲true。Kentico:如何根據文檔類型字段重定向

最好的地方在哪裏?

以及我如何訪問代碼中的kentico數據上下文,以便我可以編寫拉取文檔類型字段並基於它重定向的代碼(因爲當前嘗試訪問Dataitem(「MyFieldName」)錯誤,因爲Kentico不使用DataItem的數據綁定,即使的eval(「MyFieldName」)仍然有效。

回答

4

您可以通過CMSContext對象訪問Kentico上下文數據。

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

如果你只是希望能夠重定向頁面到另一個頁面Kentico已經有內置的東西,只需要去Page->Properties->Menu在菜單操作部分y您可以指定重定向的URL。

否則,對於要求描述你可以得到布爾值:

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

+1在接受的答案,因爲它使用的ValidationHelper。 – 2010-12-07 03:57:48