2014-02-26 56 views
2

我正在使用PCLStorage进行Win8/Wp8项目。我在PCL中使用它,并在Win8,Wp8和PCL项目中引用它。在Win8中一切都很好。Windows Phone 8中的PCLStorage

在WP8但是,一旦我打我的PCL为它采用PCLStorage存储,我得到一个NotImpmlementedException当我打电话FileSystem.Current;

“这个功能是不是在这个大会的便携式版本中实现。您应该引用主应用程序项目中的PCLStorage NuGet包,以便参考平台特定的实现。“

但就像我说的,我有我的Wp8项目中引用的PCLStorage NuGet包,PCL项目与我在Win8项目中做的相同。

任何想法发生了什么?

(我也应该注意到,PCLStorage工作正常,如果我在一个新的WP8项目中使用它)

回答

3

尝试从所有项目卸载PCLStorage NuGet包,然后所有的人都重新安装。

如果仍然不起作用,请尝试检查对WP8项目中PCLStorage DLL的引用,并确保它们来自包中的wp8文件夹。

如果这不会导致任何地方,请尝试在从PCL到PCL存储DLL的引用中将copy local设置为false。如果你必须这样做,这是一个需要解决的问题,所以请为它提供一个错误。

编辑:在VS 2013更新2 RC中有一个错误,可能导致此问题。如果您在Windows Phone应用程序中引用此NuGet程序包,则应该解决此问题:SuppressPackagingPclFacades。或者将Copy Local设置为false以便从PCL库到PCL存储组件的引用也应解决该问题。

+0

还是不行。我只是尝试在我的App.xaml.cs中引用FileSystem.Current,并且也失败了相同的异常。 – earthling

+0

有没有其他想法?我在PCL项目中将copy local设置为false,并验证了wp8 project = packages \ PCLStorage.0.9.3 \ lib \ wp8 \ PCLStorage.dll中的路径。还通过并重新安装了NuGet软件包。正如我上面所说的,它直接在我的App.xaml.c中使用时甚至不起作用。 – earthling

+0

@earthling在你原来的问题中,如果你从一个新的WP8项目开始,你会说它工作正常。它是否正确?有一两件事你可以做的是开放,这是获得包括在一个反射镜状工具的.xap文件的PCLStorage.dll,看看它包括WinRTFileSystem,WinRTFile和WinRTFolder实现。 –