Sharepoint項目編譯錯誤,提示在.NETFramework4.0中無法解析System.Net.Http的問題

最近Windows裝了幾個安全補丁,導致原來好好的Sharepoint插件程序,無法編譯通過。一直提下如下錯誤

未能解析主引用“Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c, processorArchitecture=MSIL”,因爲它對框架程序集“System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”有間接依賴關係,而在當前目標框架中未能解析該程序集。“.NETFramework,Version=v4.0”。若要解決此問題,請移除引用“Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c, processorArchitecture=MSIL”,或將應用程序的目標重新指向包含“System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”的框架版本。

重新引用對應的dll多次無效。最終發現錯誤可能是因爲安裝某些程序或補丁將“System.Net.Http.dll” 刪除導致的。

原本在如下目錄應該有“System.Net.Http.dll”

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0

打開文件夾發現“System.Net.Http.dll” 不存在。返回上一級 目錄如下:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5

發現上級目錄v4.5可以找到“System.Net.Http.dll”。將v4.5的“System.Net.Http.dll”拷貝v4.0中,重新編譯項目,順利通過。

同樣的問題,發現如果有提示 System.Web.Http.dll等類似的錯誤,應該都是同樣的問題導致的。在同級目錄中找到對應的dll複製過來即可。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章