【问题标题】:Reference something from a shared project引用共享项目中的某些内容
【发布时间】:2014-12-18 10:29:57
【问题描述】:

所以我正在使用 Xamarin 创建一个 Android 应用程序。所有的 android“东西”都将在 Android 项目中,我创建了一个共享项目来容纳业务逻辑,这样我就可以在必须创建一个 IOS 应用程序时使用它。

我已经成功地从 Android 项目中引用了共享项目 - 到目前为止一切顺利。所以我的数据库代码在共享项目中,可供任何平台使用。

我的应用需要连接到 Web 服务,所以我想将所有内容都放在共享项目中,但似乎无法将引用(网络或其他)添加到共享项目 - 这是正确的吗?当然不能,或者我不能在共享项目中使用 JSON.net 或其他任何需要引用外部 DLL 的东西......?这将导致我在每个平台上多次复制这样的任何代码。

我肯定在这里遗漏了一些东西 - 任何 Google 搜索都会返回如何从另一个项目引用共享项目...不是我需要的。

所以问题是,我可以在共享项目中添加对 Web 服务/第 3 方 DLL 的引用吗?如果可以,我该怎么做?

感谢您的帮助。

【问题讨论】:

    标签: web-services shared-project


    【解决方案1】:

    在共享项目中不能使用引用指令。您必须实例化平台特定项目 (Project.iOS) 上的引用并将其传递给共享项目中的类。

    使用 AppDelegate 定义 Web 服务引用。

    【讨论】:

      【解决方案2】:

      iOS 应用无法使用您自己创建的共享库。您可以使用的只有 Apple 在系统框架中提供的那些,您可以在 iOS SDK 中找到。

      您可以使用静态库。这可能会也可能不会解决您的问题。

      Xcode 可能正在执行此规则。

      对于一个简单的测试,您可以共享单个源文件而不是库吗?

      此外,它们在 iOS 或 Mac OS X 上不称为“DLL”,而是称为“dylibs”。

      【讨论】:

      • 嗨,我的问题不是关于 IOS - 更多关于 C# 和 Visual Studio - 我可以在共享项目中添加对 Web 服务/第 3 方 DLL 的引用吗,我似乎不是能够
      • 仅供参考,使用 Xamarin 您可以在 IOS 开发中使用共享项目:developer.xamarin.com/guides/cross-platform/…
      猜你喜欢
      • 2015-02-19
      • 2021-01-30
      • 1970-01-01
      • 1970-01-01
      • 2011-02-14
      • 2018-04-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多