首页 > 解决方案 > Xamarin.IOS Flurl.Http 参考未解决

问题描述

我正在构建一个 Xamarin.Forms 应用程序 (.NETStandard 2.0),并且我的 Android、iOS 和 UWP 项目使用的项目库之一正在使用 Flurl.Http。

- MySolution
| - My Android Project
| - My iOS Project
| - My UWP Project
| - Proj A lib
| - Proj B lib (this has added Flurl NuGet Dependency and it is used by all 3 head projects)
| - ...

上面,我根据需要将 Flurl 添加到 Proj B 库 Dependencies/NuGet 中。之后,我可以很好地构建我的 Android 和 UWP 头项目,但我的 IOS 项目无法构建并出现错误:

MyApp.App.iOS/MTOUCH: Error MT2002: Failed to resolve
 "Flurl.Http.FlurlRequest" reference from "Flurl.Http, Version=2.3.2.0, 
Culture=neutral, PublicKeyToken=null" (MT2002) 

标签: xamarin.formsxamarin.iosflurl

解决方案


如果有人遇到同样的问题,只需在你的 iOS 头项目 Packages > Add Package 上 rc 并在那里添加 Flurl.Http 。

在上面的例子中,我只将它添加到我的 iOS 项目正在使用的库项目中,这导致了上面的错误。

这解决了我的问题

我不确定为什么对于 iOS,我们必须像这样显式添加引用,但这样做为我解决了这个问题。

现在,Proj B lib 和 iOS 头项目都像这样依赖 NuGet 对 Flurl 的引用

- MySolution
| - My Android Project
| - My iOS Project (this also has package dependency on Flurl NuGet while Android and UWP do not need it)
| - My UWP Project
| - Proj A lib
| - Proj B lib (this has Flurl NuGet Dependency and it is used by all 3 head projects)
| - ...

推荐阅读