我的團隊擁有一個內置於.NET 4.5.2但已升級到4.6.1的MVC Web應用程序。對於我的團隊中的每個人,他們都可以將其加載到VS 2017的實例中,但該項目不會加載到我的項目中。我得到一個彈出錯誤「對象引用未設置爲對象的實例」。由於MSBuild問題,MVC項目不會加載到我的VS 2017環境中
我能拿到項目加載到VS如果我在.csproj的文件
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
註釋掉該行但很明顯,這是必要的,因爲離開它會導致各種奇怪的MSBuild編譯錯誤。
重申,這個問題並沒有發生在我的同事身上!
我甚至在Visual Studio安裝程序中運行修復選項,但它沒有糾正這種情況。
由於我無法在此項目上運行構建,因此我檢查了不同項目中的MSBuildBinPath變量的值(通過將消息語句插入到項目文件中),並驗證了Microsoft.CSharp.targets文件存在在那個位置。
它有助於將bin路徑引用更改爲'$(MSBuildToolsPath)'?工具路徑可能會有所不同2017年 –
@MartinUllrich我沒有特別嘗試這個。在尋找問題的答案時,我遇到了類似的問題,從$(MSBuildToolsPath)切換到$(MSBuildBinPath)解決了他們的問題,但我從來沒有嘗試過。 – jpaull