Ласкаво просимо до dev.net.ua Увійти | Приєднатися | Допомога

Ivan Bilokon

This blog is about my findings
Ошибка "The field with Id {<Field ID>} defined in feature {<Feature ID>} was found in the current site collection or in a subsite." при активации фичи в SharePoint 2013
Сегодня столкнулся с такой вот проблемой. Начитавшись о совместимости WSP между SP 2010 и SP 2013 решил попробовать установить пакет, изначально созданный в VS 2010 для SP 2010 на SP 2013. Проект содержал описание полей (Field Definitions) и тип контента (Content Type), использующий эти поля. Итак, запустил PowerShell, ввел Add-SPSolution, Install-SPSolution. Инсталляция прошла без проблем, но при активации фичи получил ошибку:

Error occurred in deployment step 'Activate Features': The field with Id {7f4d0e75-fb5a-41ff-ab25-0d64c082550f} defined in feature {892ab683-f32f-4038-b118-bcf4a95e6244} was found in the current site collection or in a subsite.


Учитывая, что устанавливал на только что созданную коллекцию сайтов, ошибка более чем странная. Попробовал открыть проект в VS 11 и установить из нее, но ошибка та же. Попробовал создать новый проект в 11 студии, скопипастил туда описания полей и типа контента - инсталляция прошла на ура. В конце-концов при помощи гугла узнал, что WSP и проекты для SP 2010 по умолчанию устанавливаются в \14 ветку SP 2013 (он имеет обе 15 и 14). Для того, чтобы явно указать 15 ветку при инсталляции из PowerShell в команде Install-SPSolution следует использовать ключ -AddToLatestVersion. Решил проверить, в этом ли проблема. Инсталляция с этим ключом моего проекта прошла успешно.

Следовательно, при появлении вышеописанной проблемы инсталлировать WSP нужно с ключом -AddToLatestVersion.
Почему так - пока не знаю. Так же еще не понял, как заставить VS 11 сразу деплоить проекты SP 2010 в 15 ветку.

Надеюсь, мой пост сохранит кому-то часик-другой :)
Удачи и спасибо за внимание!
Posted: Wednesday, August 8, 2012 2:46 PM від Ivan Bilokon

Коментарі

Немає коментарів

Анонімні коментарі деактивовані. Увійдіть або Зареєструйтесь щоб мати доступ до ресурсів Спільноти.