4

在处理使用项目的当前代码创建可移植类库时,一些变通方法是相当明显的,而另一些是有问题的。

System.IO.Directory是非 PCL,我仍然需要能够在其中创建文件之前创建一个目录。

如何在 C# 中创建文件夹而无法调用Directory.CreateDirectory(..)

4

1 回答 1

4

PCL 中没有内置的文件和目录 I/O 支持,因为此功能因平台而异。但是,为了避免这个问题,您可以在可移植类库项目中引用PCLStorage 。

PCLStorage为您将在可移植类库中引用的文件和目录 I/O 提供可移植抽象层库。在特定于平台的应用程序实现中,您将合并此抽象层的相应实现库。

PCLStorage适用于.NET Framework 4及更高版本、Silverlight 4及更高版本、Windows Phone 7.5及更高版本以及Windows Store 应用程序。它依赖于asyncand await,这意味着当与 .NET 4、Silverlight 和 Windows Phone 7.5 一起使用时,它依赖于BCL Async包。

您可能还想看看MvvmCross File 插件MvvmCross “本质上”是可移植的,并且File插件提供相关的文件和目录 I/O 功能作为同步方法。MvvmCross可移植库目前适用于.NET Framework 4.5Silverlight 4及更高版本、Windows Phone 7.5及更高版本、Windows Store 应用Xamarin.iOSXamarin.Android

于 2013-07-24T06:13:57.297 回答