Сборка переносимого проекта библиотеки классов на сервере сборки не удалась
Недавно я добавил несколько пользовательских проектов Portable Class Library в приложение, встроенное в сервер сборки. Сборка работала нормально, но после этого перестала работать и показывает следующие сообщения:
C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Microsoft.Common.targets (983, 5): предупреждение MSB3644: ссылочные сборки для платформы ".NETPortable, Version = v4.0, Profile = Profile136" не были нашел.
C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Microsoft.Common.targets (1578, 5): предупреждение MSB3270: произошло несоответствие между процессорной архитектурой строящегося проекта «MSIL» и процессорной архитектурой ссылка "C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ mscorlib.dll", "AMD64".
ошибка CS0234: тип или имя пространства имен 'Linq' не существует в пространстве имен 'Система' (отсутствует ссылка на сборку?)
Спецификации сервера сборки:
Windows Server 2008 R2 StandardTeamCity 8.0.4.NET 4.5Портативные инструменты библиотеки классов (как советовалиВот)Silverlight 5 SDKРешением является приложение .NET 4.0, а переносимые проекты предназначены только для .NET4.0 + e Silverlight 5.
Я проверил свою машину для разработки (Windows 8, Visual Studio 2012). Там действительно есть папка «C: \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework.NETPortable \ v4.0 \ Profile \ Profile136» (фактически, профили для .NET 4.0 увеличиваются до 158). Однако в сборочной машине есть только папки для профилей до 131.
Являются ли инструменты Portable Class Library современными? Кажется, он пропустил установку профилей для самых последних платформ.
ОБНОВИТЬ
Я скопировал «.NETPortable \ v4.0 \ Profile \ Profile136» моей машины для разработки на сервер сборки, и теперь приложение успешно собирается. Я все еще хотел бы знать, почему установка Portable Class Library Tools не работает из коробки.