Вопрос
Мы используем конфигурационные преобразования внутри нашего решения. Например: Debug, Test, Staging, Release Однако эти конфигурации используются только в наших проектах MVC. все библиотеки используют только Debug и Release, что имеет больший смысл, потому что наши библиотеки нужно создавать только в режиме отладки или в режиме выпуска.
Проблема возникает при попытке создать один проект из командной строки. Мне нужно сделать это, чтобы автоматически развертывать наши сборки из TeamCity в нашей тестовой среде.
Когда я создаю один проект, подобный этому
msbuild myproject.csproj
/t:Build
/P:Configuration=Test
/P:Platform=AnyCPU
/P:DeployOnBuild=True
/P:DeployTarget=MSDeployPublish
/P:MsDeployServiceUrl=https://SERVER:8172/MsDeploy.axd
/P:AllowUntrustedCertificate=True
/P:MSDeployPublishMethod=WMSvc
/P:CreatePackageOnPublish=True
/P:UserName=Username
/P:Password=Passsword
/P:DeployIisAppPath="IISAPPPATH"
Я получаю следующую ошибку
myproject.csproj" (Build target) (1) -> "C:\src\myproject.csproj" (default target) (18) -> c:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(483,9) : error : The OutputPath property is not set for project 'sampleLibrary.csproj'. Please check to make sure that you have specified a valid combination of Configuration and Platform for this project. Configuration='Test' Platform='AnyCPU'. You may be seeing this message because you are trying to build a project without a solution file, and have specified a non-default Configuration or Platform that doesn't exist for this project.
Я знаю, что это значит, потому что у моей sampleLibrary нет конфигурации для теста, и сопоставление для sampleLibrary будет содержаться в моем .sln файле
Вопрос
Есть ли способ решить эту проблему, не добавляя эти конфигурации для каждого проекта библиотеки? Здесь пахнет уродливым взломом.