質問

SharePoint 2007 Enterprise、SP2。

ゾーンにプリロードされたWebパートを使用してページをアップロードしようとすると、奇妙なエラーがあります(ULSログで見つかりました。

このWebパーツで予期しないエラーが発生しました。エラー:マークアップを正しく解析できません。マークアップはVisual Studio属性形式である必要がありますが、指定されたマークアップはXML形式です。u003CVPCQWP:ComponentLandingCQWPn runat="server" id="CL_CQWP" />

このWebPartは、ContentByQueryWebPartクラスから派生し、多くのWebコンテキストに敏感なプロパティを設定します。

これはWebPartzone全体であり、はい - TagPrefixはページの上部に適切に登録されています。

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

クレイジーな部分は、このWebパーツをゾーンからクリアし、ページをアップロードしてから、Web UIを介してWebパーツを再び追加した場合です。ここに何が欠けていますか?

役に立ちましたか?

解決

Webパーツをページレイアウトに直接追加すると、ページはページの一部としてASP.NETエンジンによって解析されます。これにより、多くの場合、機能またはonet.xmlを介したプロビジョニングとは異なる動作が得られます(intの代わりにuintを使用しようとしている自分でこれを見ました ここ).

あなたがそこに着いた通常のCQWPか、あなたがあなた自身のロールしたかどうかはわかりませんが、WebPart XMLを構成した場合と同様に、すべての有効なプロパティをコントロールに設定してください。

プロパティを確認するには、SharePoint Designerを使用してページレイアウトにWebパーツを追加します(OBS:コードビューでコントロールをコピーし、ページレイアウトの変更を元に戻すため、ページレイアウトを解除/カスタマイズしないでください)

以下は、CQWPをSPDを使用して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

他のヒント

アンダースに同意する必要があります。サブクラスがあるのがCQWPである場合、より多くのプロパティを指定するか、Webパーツに設定する必要があります(たとえばOnload/CreateChildControls)。たとえば、.webpartファイル内でどのプロパティを設定しましたか? Webインターフェイスを使用してWebパーツを追加することは、Webパーツゾーンテンプレートのコントロールを指定することと同じではありません。 Webインターフェイスを介して追加すると、Webパーツコントロールの説明ファイル(.webpart)を使用して、Webパーツのデフォルト値を取得します。

/ww

ライセンス: CC-BY-SA帰属
所属していません sharepoint.stackexchange
scroll top