VSeWSS "Элемент с тем же ключом уже добавлен" - PullRequest
1 голос
/ 02 ноября 2009

На этапе пакета развертывания VSeWSS выдается исключение. Из журналов:

2009/11/02 11:59:46 Ошибка System.ArgumentException: элемент с тот же ключ уже был добавлен.
в System.ThrowHelper.ThrowArgumentException (ExceptionResource ресурс) в System.Collections.Generic.Dictionary 2.Insert(TKey key, TValue value, Boolean add) at System.Collections.Generic.Dictionary 2.Add (TKey ключ, значение TValue) в Microsoft.SharePoint.Tools.SharePointProxies.WSPViewFacade.CreateWebPartReferenceResolverClassMap (String [] пути) в VSeWSS.Server.Services.SPService.CreateWebPartReferenceResolverClassMap (String [] пути)

Кто-нибудь видел это раньше? Я проверил все мои файлы feature.xml и мой solution.xml, чтобы узнать, дублированы ли какие-либо идентификаторы, а они нет. Я также проверил названия функций, и они также не были продублированы. Есть намеки?

Ответы [ 5 ]

1 голос
/ 21 августа 2010

Проверьте файл manifest.xml для каждого неудачного проекта - удалите дубликаты ссылок на сборки, чтобы решить эту проблему.

1 голос
/ 05 ноября 2009

У меня тоже была эта проблема.

Дело в том, что я локально подключил другую DLL, на которую я тогда ссылался. Это уже было развернуто в предыдущем проекте.

Когда я исключил DLL из решения, веб-часть развернулась

1 голос
/ 02 ноября 2009

Вероятно, это ошибка в vsewss. Проблема в том, что он помнит, что в прошлый раз он добавил тот же элемент.

Попытка:

  • Чистый раствор
  • Закройте и снова откройте Visual Studio

Редактировать: попробовать еще несколько вещей

  • Удалить развернутый код вручную из Sharepoint
  • У вас есть последняя версия инструмента vsewss?
  • У вас есть ссылки между веб-проектами?
  • Есть ли какие-либо файлы в каталоге pkg только для чтения
0 голосов
/ 03 ноября 2009

Я, наконец, полностью восстановил проект, и все снова хорошо. Обычно я отправляю что-то подобное в MS Connect, но они никак не могут это исправить. VSeWSS как плагин VS2008 - полностью мертвый продукт.

Нам просто придется бороться, пока мы не получим VS2010, после чего я могу начать регистрировать ошибки подключения.

0 голосов
/ 02 ноября 2009

Не могли бы вы попробовать .NEt Reflector в библиотеках VSeWSS и проверить фактический код, который выполняется, выполняемый методом CreateWebPartReferenceResolverClassMap в классе Microsoft.SharePoint.Tools.SharePointProxies.WSPViewFacade? Это может предоставить вам более подробную информацию о том, где искать ваше собственное решение.

...