SharePoint - Как обновить решение VSEWSS с VS2005 до VS2008

У меня есть решение MOSS, успешно созданное в Visual Studio 2005 с использованием VseWss 1.1. Теперь я попытался перейти на Visual Studio 2008 для использования VseWss 1.3. При обновлении не возникло никаких ошибок, однако теперь при попытке развертывания возникает следующая ошибка:

The class id 00000000-0000-0000-0000-000000000000 exists in this Solution in both MyGlobals (C:\Code\website\MySolution\MyGlobal.cs) and MyWelcomeLayoutFeatureReceiver (C:\Code\website\MySolution\Modules\MyWelcomeLayout\MyWelcomeLayoutFeatureReceiver.cs). Class id's must be unique for deployment to succeed. The Guid attribute in each of the class files should match the feature id in the feature manifest for that particular feature.

Я получаю ту же ошибку при попытке открыть представление WSP в VS. Я запустил поиск по моим файлам, и ни у одного из них нет гида, содержащего только нули. Класс MyGlobals не является частью определенной функции, а является лишь частью сборки (поэтому не имеет уникального guid!!, только у сборки).

Кто-нибудь имел эту проблему и решил ее или есть какие-либо советы по обновлению? Спасибо

2 ответа

Решение

Спасибо. Для всех, у кого такая же проблема, вот подробности решения:

  1. добавлять Using System.Runtime.InteropServices; к началу кода
  2. Создайте уникальный GUID с помощью генератора Guid ("C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\guidgen.exe")
  3. Перед вашим классом добавьте следующую строку: [Guid("...your-unique-guid...")]

Мне удалось решить проблему, добавив уникальный атрибут guid над каждым объявлением класса. Все еще немного странно, когда я создаю новый проект, мне не нужно этого делать.

Другие вопросы по тегам