Kentico: Cómo redirigir basado en campo de tipo de documento
Pregunta
Tengo un determinado tipo de documento en Kentico que tiene un campo booleano que cuando cierto que necesito la página para redirigir a otra URL (en este caso una página 404).
¿Dónde está el mejor lugar para hacer esto?
y cómo accedo al contexto de datos Kentico en el código para que yo pueda escribir código que arrastra el campo de los tipos de documentos y redirecciones basado en él (ya que actualmente intenta acceder errores DataItem ( "") myFieldName porque Kentico no hace uso DataItem para el enlace de datos, a pesar de que Eval ( "myFieldName") todavía funciona.
Solución
Se puede acceder a los datos de contexto Kentico a través del objeto CMSContext.
<%
if ((bool)CMSContext.CurrentDocument.DataRow["MyFieldName"])
Response.Redirect("PageNotFound.aspx");
%>
Otros consejos
Si sólo quiere ser capaz de redirigir una página a otra página. Kentico ya tienen algo incorporado, sólo tiene que ir a la Page->Properties->Menu
. En la sección de acciones de menú se puede especificar una dirección URL de redirección.
De lo contrario para el requisito descrito se puede obtener el valor booleano por:
if(ValidationHelper.GetBoolean(
CMSContext.CurrentDocument.GetValue("MyFieldName"), false)))
{
Response.Redirect("/404.aspx");
}