簡體   English   中英

Flurl 缺少方法異常?

[英]Flurl Missing Method Exception?

我正在使用 Flurl 來消耗 API 並且在大多數情況下它工作得很好。 但是,我有一些用戶遇到了缺少方法異常。 我正在嘗試從其中一位體驗它的用戶那里獲得完整的堆棧跟蹤,但到目前為止我只有一個消息的屏幕截圖。 異常消息是:

System.Threading.Tasks.Task`1<System.Net.Http.HttpResponseMessage>Flurl.Http.GeneratedExtensions.PostJsonAsync(Flurl.Http.IFlurlRequest, System.Object, System.Threading.CancellationToken, System.Net.Http.HttpCompletionOption)

這是奇怪的事情; 我最初沒有在我的安裝中包含 System.Net.Http,對於大多數用戶來說一切似乎都運行良好,但有些用戶開始收到“無法加載 System.Net.Http 版本 4.1.x”(不記得 x 部分但它是 4.1.something...)。 無論如何,當我參考 Flurl.Http 2.4.2.0 時,我查看了它正在使用 System.Net.Http 4.6.26907.1 構建。 當我將其包含在安裝中時,他們會收到上述錯誤。 這僅適用於少數用戶,大多數(包括我的開發機器)不會出現任何錯誤並且可以正常工作,這是我不明白的。

任何人都知道它為什么會這樣做,尤其是為什么它會出現在某些機器上而不是其他機器上?

這是System.Net.Http的一個非常常見的問題 我以前遇到過它,我越是“白紙黑字”,我的運氣就越好。 嘗試這個:

  1. 卸載 Flurl 和 Flurl.Http NuGet 軟件包。
  2. 你在 .NET 框架上嗎? 如果是這樣,並且您通過 NuGet 安裝了System.Net.Http ,也請卸載它。 你可能不需要它。
  3. 檢查您的 web.config 或 app.config 文件並刪除與System.Net.Http關聯的任何綁定重定向 (不要引用我的話,但我認為我什至通過從 *.config 中刪除所有提及System.Net.Http的內容來解決這個問題。如果你嘗試這樣做,請確保你可以回滾。)
  4. 重新安裝 Flurl.Http。 (它會拉動核心 Flurl,所以不要分開做。)

當然,如果這不起作用,您可以隨時篩選上面鏈接的大量類似問題。 這令人沮喪,我認為任何單一的答案都不能在所有情況下都奏效。 祝你好運。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM