【问题标题】:Xamarin - Shared Class Library Accessing System.IO.FileXamarin - 访问 System.IO.File 的共享类库
【发布时间】:2016-07-05 16:11:32
【问题描述】:

我尝试创建一个非常简单的应用程序,其中包含

  • Windows 版本
  • Mac 版
  • 可移植类库

我想将代码(尽可能多地)放入可移植类库中。 现在我只想使用System.IO.File.Exists() 检查文件是否存在,但File 对象不可用。我试图针对不同的平台,但我无法让它工作。

【问题讨论】:

    标签: c# xamarin portable-class-library xamarin.mac


    【解决方案1】:

    @hvaughan3 said 是正确的,因为System.IO.File 在您的 PCL 中不可用,它需要在每个平台内实现并注入到您的 PCL 中。也就是说,好消息是,就像许多这些常见要求一样,已经有一个插件可以做到这一点,所以你不需要自己做。

    查看以下blog post,它描述了如何在您的 PCL 项目中使用 PCLStorage 插件。

    【讨论】:

      【解决方案2】:

      System.IO.File 在 PCL 代码中不可用。您将需要在特定于平台的代码中实现。您还需要验证它是否适用于每个平台。我知道它适用于 Android 和 iOS,从未尝试在 Mac 和 Windows 上使用它。尽管从 Xamarin 的 docs 看来,至少 Mac 确实有 System.IO.File

      在每个平台项目中都有方法后,您可以使用 Xamarin 的 Dependency Service 从 PCL 代码中引用特定于平台的方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-09-26
        • 2015-08-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多