Проблема с SharePoint при использовании компонента с узлом AllUsersWebPart - PullRequest
1 голос
/ 14 мая 2009

У меня есть функция SharePoint, которая устанавливает новый макет страницы.

Требованием для этой функции было установить макет страницы с веб-частью по умолчанию, чтобы при выполнении пользователем действия «Создать страницу» страница создавалась с веб-частью, уже находящейся на странице.

Итак, я попытался добавить узел AllUsersWebPart в определение элементов страницы, например.

<Elements>
    ...
    <Module ...>
        ...
        <File ...>
            <AllUsersWebPart ...>
                ...
            </AllUsersWebPart>
        </File>
        ...
    </Module>
</Elements>

Установил, развернул функцию и т. Д. И, конечно, получил сообщение об ошибке «Для этого объекта не определен конструктор без параметров» - скорее всего, проблема с моим определением в Elements.xml.

Теперь у меня НАСТОЯЩАЯ проблема в том, что я попытался удалить раздел AllUsersWebPart из определения функции (чтобы на странице не было веб-частей при создании), и из-за фантастической ошибки в SharePoint веб-часть все еще остается определенной для макета страницы, хотя определение функции говорит по-другому - я нашел некоторые подробности об этом в http://sharepointblog.buus -oestergaard.dk / post / Default-webparts-in-sharepoint-pagelayouts.aspx (пункт № 2).

Я пытался обновить и удалить / переустановить функцию, но безрезультатно - как я могу удалить эту веб-часть из базы данных функций / контента, чтобы я мог иметь функцию, просто установив макет страницы или поставив правильный определение веб-части в функции?

Ответы [ 2 ]

1 голос
/ 14 мая 2009

Хорошо, мой макет страницы работает, вот шаги, которые я предпринял, если это будет полезно:

1 Редактирование макета страницы в режиме обслуживания страницы веб-части:

http://<server name>/_catalogs/masterpage/<page name>.aspx?contents=1

Удалить все экземпляры веб-частей оттуда.

2 Откройте макет (на сервере) в Designer и убедитесь, что WebPartZone / ZoneTemplate пусты. После проверки убедитесь, что макет страницы настроен на утверждение.

После этого можно использовать макет страницы - я смог без проблем удалить и переустановить свой макет страницы.

Похоже, что определения веб-частей остались в базе данных, поэтому, когда функция обновляется / переустанавливается, они уже связаны с зоной страницы / веб-части. Разбираться с этим, вероятно, следует в коде в функции получения функций в макете страницы, если я когда-нибудь найду это, я опубликую это где-нибудь ...

0 голосов
/ 14 мая 2009

При удалении этой функции вы удостоверились, что ваша разметка страницы удалена из каталога Masterpage / pagelayout?

Элемент функции, используемый для добавления файла содержимого (pagelayout), не удаляет его при деактивации функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...