![](/img/trans.png)
[英]Unable to run the unit test in visual studio 2017 professional
[英]visual studio 2017 professional - references not resolving (on some machines)
它始於一名開發人員,需要解決一些版本控制問題。 他現在將標准定義中的一些System.xxx
引用更改為指向“ packages”文件夾。 我們使用FW 4.7.1,這是Web Api項目。
<Reference Include="System.Runtime">
<HintPath>..\..\..\packages\System.Runtime.4.3.0\lib\net462\System.Runtime.dll</HintPath>
<Private>True</Private>
</Reference>
通常這樣的參考以這種形式出現
<Reference Include="System.Runtime" />
問題:參考旁邊的黃色警告標志。 查看屬性窗口-找不到任何信息。 但是,項目會編譯。 顯然,針對其他一些DLL,而不是來自hintPath
DLL。 問題是,即使它可以編譯,也不會將DLL復制到bin
並且應用程序無法運行。
這是環境問題,因為我們有兩台運行中的Server 2016計算機。 1 Win10也是如此。 但是其他Win10機器不起作用。
我想使用MsBuild來查看是否可以正確構建。 但是MsBuild和Devenv命令行均無效。 這表明該問題在特定的OS和VS安裝中更為普遍。 之所以編譯,是因為Devenv和MsBuild擅長遍歷GAC,然后遍歷目錄,直到找到適合的DLL。
經過一番研究,我發現了問題所在。 這是VS中的錯誤。 我已向VS Dev團隊提交了一張票,現在是“正在考慮中”
如果我將項目文件中的引用設置為packages文件夾,而該引用為“ System。[名稱]”或“ Microsoft。[名稱]”,例如“ System.Runtime”,則無法解析該引用。 該項目可以構建,但是特定的引用不會復制到“ bin”文件夾中
在VS2017 v15.5之后開始發生這種情況。 安裝v15.2-15.4可以解決引用問題。
該解決方案隨VS2017 update7一起提供。 v15.7及更高版本解決了此問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.