Я взял на себя проект, ориентированный на .net4.
Один из проектов в рамках решения использует System.Runtime.CompilerServices.CallerMemberNameAttribute из System.Runtime.dll, которая устанавливается при использовании пакета Microsoft BCL Portability Pack.
Я проверил, и проект в настоящее время использует версию 1.1.3.
Когда решение собирается на локальных машинах разработки, все компилируется без проблем.
Сейчас я пытаюсь собрать решение в teamcity, но когда TeamCity пытается скомпилировать решение, я получаю эту ошибку. ошибка CS0246: тип или имя пространства имен «CallerMemberName» не может быть найден (вам не хватает директивы using или ссылки на сборку?) ошибка CS0433: тип «System.Runtime.CompilerServices.CallerMemberNameAttribute» существует как в «c:\Windows \Microsoft.NET\Framework\v4.0.30319\mscorlib.dll" и "c:\apps\teamcity\buildAgent\work\bb8aacaa9fabeac8\packages\Microsoft.Bcl.1.1.3\lib\net40\System.Runtime.dll"
Я прочитал ответ Джона Скитса на этот вопрос: Использование атрибута CallerMemberName в переносимой библиотеке Но я уже использую библиотеку BCL.