plantillas - Solo se permiten controles de contenido directamente en una página de contenido que contiene controles de contenido en ASP.NET
master page sharepoint (10)
Tengo una aplicación que tiene una página maestra y páginas secundarias. Mi aplicación funciona bien en el host local (en mi intranet). Pero tan pronto como lo coloco en un servidor que está en Internet, aparece el error que se muestra a continuación después de hacer clic en cualquier menú.
Solo se permiten los controles de contenido directamente en una página de contenido que contiene controles de contenido.
En mi caso, olvidé agregar la referencia de ensamblaje de AjaxControlToolkit.dll.
Cuando agrego la referencia el error desapareció.
Me enfrentaba a un problema similar. ¿Está rodeando su código con la etiqueta "contenido"?
<asp:Content>Add your HTML here</asp:Content>
Y tenga etiquetas de contenido separadas para sus secciones. Un contenido de encabezado para la declaración de encabezado y un contenido de cuerpo para la declaración de cuerpo.
Otra posibilidad son los finales de línea. Copié una versión anterior del código del control de origen que aplicaba los finales de línea del estilo Unix. Como no era un pago, no convertía automáticamente los finales de línea al estilo DOS / Windows. El mensaje de error era el error "Sólo se permiten los controles de contenido directamente ..." a pesar de que la página se diseñó correctamente. Parece que la falta de saltos de línea del estilo de Windows hizo que el analizador ASPX fallara.
Pude corregirlo pegando el código en un editor agnóstico de final de línea (lo que hizo que los finales de línea se normalizaran al estilo de Windows), volviéndolo a copiar en el portapapeles y pegándolo de nuevo en Visual Studio, después de lo cual aparece la página. Procesado sin errores.
En el caso presentado por Tripati Subudhi en la pregunta, es completamente posible que algo sobre el proceso de implementación haya utilizado los finales de línea convertidos inadvertidamente al estilo Unix, lo que lleva al error.
Otra posible causa de este error: etiquetas con el caso equivocado.
cambiando <asp:content>...
a <asp:Content>...
solucioné el problema en mi caso.
El motivo del caso defectuoso fue la función de documento de formato incorporada en Visual Studio 2012 (y 2013) con la configuración predeterminada. la configuración para esto se puede cambiar en Herramientas-> Opciones-> Editor de texto-> HTML (Formularios web) -> Formato: establezca la mayúscula de la etiqueta en ''como ingresó'' y Studio ya no destruirá sus archivos.
Otro problema posible son los comentarios HTML, tenía estos alrededor de un control de contenido. Creo que ASP.NET los convierte en controles literales detrás de la escena. De ahí el error i
Para mí, eran dos controles de contenido que tenían la misma ID: el archivo se había editado fuera de Visual Studio, por lo que no se produjo el cambio de nombre de la ID duplicada. Este error engañoso fue resaltar la primera imagen dentro del segundo control de contenido con la misma ID que la primera - ¡qué caza de ganso salvaje!
Copiar la página completa y volver a publicarla sobre sí misma lo resolvió, ya que VS en ese momento cambió el nombre de la ID de control duplicada.
Para mí, no me gustó que tuviera una Asamblea y una directiva de página comentada:
<%--<%@ Assembly Name="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" %>--%>
<%--<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MyPage.aspx.cs" Inherits="MyClass.MyPage" MasterPageFile="~/_layouts/MyProject/MasterPages/MasterPage.master" %>-->
A pesar de que tenía una directiva de página válida después de eso, y no estaba usando System.Core para nada. Después de solo quitarlos, se cargó bien.
Tuve exactamente el mismo problema. El problema era que tenía algunos espacios después de la etiqueta de contenido final:
</asp:Content>
Eliminar todos los espacios, saltos de línea después de la última etiqueta de cierre.
Verifique dos y tres veces la apertura y el cierre de las etiquetas de contenido en las páginas secundarias.
Confirmar que ellos
- están en existencia
- se escriben correctamente
- tener una identificación
- tener runat = "servidor"
- tener el ContentPlaceHolderID correcto
en SharePoint sucedió desde que no se publicó un pageLayout.