在处理从项目的当前代码创建可移植类库时,一些解决方法相当明显,而另一些则存在问题。
System.IO.Directory
是非 PCL,我仍然需要能够在其中创建文件之前创建一个目录。
如何在无法调用 Directory.CreateDirectory(..)
的情况下在 C# 中创建文件夹?
最佳答案
PCL 中没有内置文件和目录 I/O 支持,因为此功能因平台而异。但是,要避免此问题,您可以引用 PCLStorage在您的可移植类库项目中。
PCLStorage 为您将在可移植类库中引用的文件和目录 I/O 提供可移植抽象层库。在特定于平台的应用程序实现中,您将合并该抽象层的相应实现库。
PCLStorage 适用于 .NET Framework 4 及更高版本、Silverlight 4 及更高版本、Windows Phone 7.5及更高版本,以及 Windows 应用商店应用。它依赖于async
和await
,这意味着它依赖于BCL Async。使用时包装,例如使用 .NET 4、Silverlight 和 Windows Phone 7.5。
您可能还想看看 MvvmCross File plug-in . MvvmCross“本质上”是可移植的,File 插件提供相关的文件和目录 I/O 功能作为同步方法。 MvvmCross 可移植库目前适用于 .NET Framework 4.5、Silverlight 4 及更高版本、Windows Phone 7.5 及更高版本、Windows 应用商店应用、Xamarin.iOS 和 Xamarin.Android。
关于c# - 如何使用 PCL 创建目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17822906/