This test demonstrates the issue of no valid default project config causes issues in Rosyln with project references.
The line <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> in \FailingProgram\DummyProgram.csproj is causing Compilation.References to not include the system libraries associated with the project when no property group targets the AnyCPU profile.
To create a new project that fails the test:
- Open Configuration Manager
- Under "Active Solution Platform" chose
<New...> - Create a new platform targeting
x86with "Crate new project platforms" checked. - Under "Active Solution Platform" chose
<Edit...> - Delete
AnyCPU - Under "Platform" for DummyProgram choose
<Edit...> - Delete
AnyCPU
Be sure to delete the project level AnyCPU entries along with the solution level entries or the tests will not show the problem.
Workaround to fix the issue:
- Edit DummyProgram.csproj with notepad
- Change
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>to<Platform Condition=" '$(Platform)' == '' ">x86</Platform>