Kentico: Come reindirizzare in base al campo tipo di documento
Domanda
ho un certo tipo di documento in Kentico che ha un campo booleano che quando ho bisogno vero pagina per reindirizzare a un altro URL (in questo caso una pagina 404).
Dove è il posto migliore per fare questo?
e come faccio ad accedere il contesto dati Kentico nel codice in modo che io possa scrivere codice che tira il campo dei tipi di documenti e redirect basati su di esso (perché attualmente tentando di accedere dataitem () errori "MyFieldName", perché non lo fa uso Kentico DataItem per l'associazione di dati, anche se Eval ( "MyFieldName") funziona ancora.
Soluzione
È possibile accedere ai dati di contesto Kentico tramite l'oggetto CMSContext.
<%
if ((bool)CMSContext.CurrentDocument.DataRow["MyFieldName"])
Response.Redirect("PageNotFound.aspx");
%>
Altri suggerimenti
Se si desidera solo essere in grado di reindirizzare una pagina a un'altra pagina. Kentico già qualcosa di costruito in, basta andare al Page->Properties->Menu
. Nella sezione azioni di menu è possibile specificare un URL per il reindirizzamento.
In caso contrario, per il requisito descritto è possibile ottenere il valore booleano da:
if(ValidationHelper.GetBoolean(
CMSContext.CurrentDocument.GetValue("MyFieldName"), false)))
{
Response.Redirect("/404.aspx");
}