Question

J'ai un certain type de document dans Kentico qui a un champ booléen qui, si vrai, j'ai besoin la page pour rediriger vers une autre URL (dans ce cas, une page 404).

Quel est le meilleur endroit pour le faire?

et comment puis-je accéder au contexte de données Kentico dans le code afin que je puisse écrire du code qui tire le champ des types de documents et réoriente sur la base (car en train d'essayer d'erreurs d'accès DataItem (de « MyFieldName ») parce que Kentico ne pas utiliser DataItem pour la liaison de données, même si Eval ( "MyFieldName") fonctionne toujours.

Était-ce utile?

La solution

Vous pouvez accéder à des données de contexte Kentico via l'objet CMSContext.

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

Autres conseils

Si vous voulez seulement être en mesure de rediriger une page vers une autre page. Kentico ont déjà quelque chose de construit, allez à la Page->Properties->Menu. Dans la section Actions de menu, vous pouvez spécifier une URL pour la redirection.

Dans le cas contraire pour la condition décrit, vous pouvez obtenir la valeur booléenne par:

if(ValidationHelper.GetBoolean(
    CMSContext.CurrentDocument.GetValue("MyFieldName"), false)))
{
    Response.Redirect("/404.aspx");
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top