【问题标题】:How does one create a directory with a PCL如何使用 PCL 创建目录
【发布时间】:2013-07-23 23:49:51
【问题描述】:
在处理使用项目的当前代码创建可移植类库时,一些变通方法相当明显,而另一些则存在问题。
System.IO.Directory 不是 PCL,我仍然需要能够在其中创建文件之前创建一个目录。
如何在 C# 中创建文件夹而无法调用 Directory.CreateDirectory(..)?
【问题讨论】:
标签:
c#
.net
mono
portable-class-library
【解决方案1】:
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。
您可能还想看看MvvmCrossFile plug-in。 MvvmCross“本质上”是可移植的,File 插件提供相关的文件和目录 I/O 功能作为同步方法。 MvvmCross 可移植库目前适用于 .NET Framework 4.5、Silverlight 4 及更高版本、Windows Phone 7.5 及更高版本、Windows 应用商店应用、Xamarin.iOS 和 Xamarin.Android。