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.

È stato utile?

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");
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top