У меня есть решение, которое содержит проект веб-сайта и несколько проектов, которые поддерживают классы поддержки. Каждый проект выполняет отдельную базовую функцию: Конфигурация, Данные, Идентичность, Бизнес-объекты и т. Д. Когда я открываю решение в VS2008, оно отлично строится. Он работает, запускается, отлаживает и не испытывает никаких исключений при компиляции или JIT.
После создания автоматического определения сборки в TFS 2010, сборка запускается и компилирует все подпроекты по порядку. Все они нацелены на «Debug | Mixed Platforms», потому что документация, которую я прочитал, пытаясь отследить мою ошибку, указывает на то, что это необходимо для проектов веб-сайтов. Я вижу в журнале сборки, где все недавно скомпилированные библиотеки и все сторонние библиотеки копируются как в каталог \Binaries
, так и в каталог \bin
веб-сайта. Тогда самые следующие строки в журнале:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_compiler.exe -v /MySolution -p ..\MySolution\ -u -f -d -fixednames D:\TFS\b\308\Binaries\_PublishedWebsites\MySolution\
D:\TFS\b\308\Sources\MySolution\SomeFolder\SomePage.aspx.vb(15): error BC30456: 'MyProperty' is not a member of 'Some_UserControl_ForPage'. [D:\TFS\b\308\Sources\Solution Files\MySolution.sln]
Done Building Project "D:\TFS\b\308\Sources\Solution Files\MySolution.sln" (default targets) -- FAILED.
Build FAILED.
"D:\TFS\b\308\Sources\Solution Files\MySolution.sln" (default target) (1) ->
(MySolution target) ->
D:\TFS\b\308\Sources\MySolution\SomeFolder\SomePage.aspx.vb(15): error BC30456: 'MyProperty' is not a member of 'Some_UserControl_ForPage'. [D:\TFS\b\308\Sources\Solution Files\MySolution.sln]
Данное свойство для пользовательского элемента управления принадлежит наследованию "дедушки и бабушки". Сам элемент управления наследует пользовательский WebUserControl в библиотеке бизнес-объектов. Этот класс, в свою очередь, наследуется от менее определенного WebUserControl, который имеет это базовое свойство. Когда строка кода закомментирована, ошибка меняется, но это еще одна «невозможная» ошибка, которая происходит дальше по цепочке сборки.
У нас есть другие проекты веб-сайтов, которые автоматически собираются и внедряются из этого агента сборки во всех средах 2.0+. Когда я изменяю различные свойства определения сборки (рабочая область и т. Д.) Или настраиваю конфигурацию сборки в самом решении, она не вызывает изменений в поведении. После завершения сборки все успешно собранные проекты попадают в папку сборки. Кроме того, в этом решении есть второй, менее сложный проект веб-сайта, который успешно создается и заканчивается в папке _PublishedWebsites в папке сборки.