суббота, октября 30, 2010

Споткнуться на ровном месте - 3

Очередной капкан обнаружился при попытке установить веб-часть на страницу просмотра для списка, который имеет поля типа FilteredLookup. Независимо от выбранной веб-части получаем исключение HRESULT: 0x80030102 (STG_E_REVERTED)) (использование уничтоженных ранее объектов). Такое же исключение получается и при попытке удалить с такой страницы ранее установленные веб-части.Раздраженный

Проведённое расследование показало, что поле не сильно и виновато: отладчик не фиксирует исключения в коде поля, а “страница сопровождения веб-частей” [_layouts/spcontnt.aspx]) удаление делает без проблем. Получается, редактор страниц как-то хитро взаимодействует с полем, при этом хитрость выходит боком. Что удивительно, для пользователей, а не для разработчиков.

Винт для этой хитрой зад примочки нашёлся довольно быстро – утилитой SPFExplorer (модификация под Шарепойнт-2010 старой моей утилиты) скопировал нужную веб-часть с другой страницы. И без использования уничтоженных объектов…

Придётся теперь плагин для утилиты сочинять… Кружка пива

Комментариев нет: