Pregunta

SharePoint 2007 Enterprise, SP2.

Me estoy haciendo un extraño error (que se encuentra en los registros de ULS, Google informa de ningún golpe en el propio mensaje) al intentar subir una página con un elemento Web precargado en una zona:

Un error inesperado ha sido encontrado en este elemento Web. Error: No se puede analizar el marcado correctamente. Eso es probable que el margen de beneficio debe estar en Atributo formato Visual Studio, pero el margen de beneficio dado está en formato XML., DesignText:

Este WebPart deriva de la clase ContentByQueryWebPart, y conjuntos de un número de propiedades sensibles web de contexto.

Este es el conjunto de la WebPartZone, y sí - la TagPrefix se ha registrado correctamente en la parte superior de la página:

<WebPartPages:WebPartZone runat="server" FrameType="TitleBarOnly" ID="TopLeft" Title="Top Left">
  <ZoneTemplate>
    <VPCQWP:ComponentLandingCQWP runat="server" id="CL_CQWP"></VPCQWP:ComponentLandingCQWP>
  </ZoneTemplate>
</WebPartPages:WebPartZone>

La parte loca es si puedo borrar esta pieza de la tela hacia fuera de la zona, subo a la página, y luego añadir la parte trasera pieza de la tela a través de la interfaz web, funciona, no hay problema. Lo que me estoy perdiendo aquí?

¿Fue útil?

Solución

Cuando se agrega el elemento web directamente en el diseño de la página, la página Cómo analizado por el motor ASP.NET como parte de la página. A menudo, esto le dará un comportamiento diferente al de aprovisionamiento a través de una característica o ONET.XML (vi esto por mí mismo tratando de uso uint en lugar de int aquí ).

No estoy seguro de si es un CQWP normales que llegó allí, o si rodó su cuenta, pero asegúrese de configurar todas las propiedades válidas en el mando, como lo haría si se había configurado el elemento Web XML.

Para comprobar qué propiedades tienen que estar allí, el uso de SharePoint Designer para agregar el elemento web en el diseño de página (OBS: sólo tienes que copiar el control en la vista de código, y deshacer los cambios de diseño de página para que no Unghost / personalizar el diseño de la página )

A continuación se muestra un ejemplo de configuración por defecto cuando se arrastra un CQWP en un SPD usando PL:

<PublishingWebControls:ContentByQueryWebPart 
    runat="server" 
    NoDefaultStyle="" 
    ZoneID="" 
    FrameType="TitleBarOnly" 
    Dir="Default" 
    UseSQLDataSourcePaging="True" 
    AllowConnect="True" 
    Title="Content Query Web Part" 
    SuppressWebPartChrome="False" 
    ViewContentTypeId="" 
    MissingAssembly="Cannot import this Web Part." 
    FrameState="Normal" 
    ID="ContentByQueryWebPart1" 
    AllowRemove="True" 
    AllowHide="True" 
    AllowEdit="True" 
    ShowWithSampleData="False" 
    IsIncluded="True" 
    PartImageLarge="" 
    PartOrder="1" 
    PartImageSmall="" 
    AllowMinimize="True" 
    ConnectionID="00000000-0000-0000-0000-000000000000" 
    ExportMode="All" 
    IsIncludedFilter="" 
    GroupStyle="DefaultHeader" 
    HelpLink="" 
    SortByDirection="Desc" 
    IsVisible="True" 
    SortBy="{8c06beca-0777-48f7-91c7-6da68bc07b69}" 
    DataSourceID="" 
    AllowZoneChange="True" 
    HelpMode="Modeless" 
    ExportControlledProperties="True" 
    AdditionalFilterFields="" 
    AdditionalGroupAndSortFields="" 
    DetailLink="" 
    ItemStyle="Default" 
    Description="Use to display a dynamic view of content from your site on a web page" 
    ChromeType="TitleOnly" 
    PageSize="-1" 
    __MarkupType="vsattributemarkup" 
    __WebPartId="{b9de16fc-23b5-4d39-aaf7-3e42e8389548}" 
    WebPart="true" 
    Height="" 
    Width="">
    <SampleData>
        <dsQueryResponse>
                    <Rows>
                        <Row Title="Item 1" LinkUrl="http://Item1" Group="Group Header" __begincolumn="True" __begingroup="True" />
                        <Row Title="Item 2" LinkUrl="http://Item2" __begincolumn="False" __begingroup="False" />
                        <Row Title="Item 3" LinkUrl="http://Item3" __begincolumn="False" __begingroup="False" />
                    </Rows>
                </dsQueryResponse></SampleData>
    <DataFields>
    </DataFields>
    <Xsl>
    <xsl:stylesheet xmlns:x="http://www.w3.org/2001/XMLSchema" version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:cmswrt="http://schemas.microsoft.com/WebPart/v3/Publishing/runtime" exclude-result-prefixes="xsl cmswrt x" > <xsl:import href="/Style Library/XSL Style Sheets/Header.xsl" /> <xsl:import href="/Style Library/XSL Style Sheets/ItemStyle.xsl" /> <xsl:import href="/Style Library/XSL Style Sheets/ContentQueryMain.xsl" /> </xsl:stylesheet></Xsl>
</PublishingWebControls:ContentByQueryWebPart>

hth Anders Rask

Otros consejos

Estoy de acuerdo con Anders, si es un CQWP que tiene subclases, es necesario o bien para especificar mucho más propiedades o los puse en su pieza de la tela (en proceso de carga / CreateChildControls por ejemplo). Por ejemplo qué propiedades se han establecido dentro del archivo .webpart? Adición de la parte web mediante la interfaz web no es el mismo que especificando el control en una plantilla web zona parcial. Al estar agregando que a través de la interfaz web a continuación la descripción de control de la parte web de archivos (.webpart) se utiliza para obtener los valores por defecto de la parte web.

/ WW

Licenciado bajo: CC-BY-SA con atribución
scroll top