3
Vote

PCLStorage is failing to work in WP8

description

I have used PCLStorage in a project that has a PCL, Win8, and WP8 project and it has worked beautifully up until I updated Visual Studio 2013 to the RC for the latest update. Now, when I try to call into my PCL, I get this exception:

"This functionality is not implemented in the portable version of this assembly. You should reference the PCLStorage NuGet package from your main application project in order to reference the platform-specific implementation."

I have followed the suggestions on the thread here:

http://stackoverflow.com/questions/22052472/pclstorage-in-windows-phone-8

Uninstalling and reinstalling PCLStorage using the NuGet Manager didn't help.
I validated that the WP8 project was pointing to the wp8 folder in the package.

I set copy local to false in the properties in my PCL and it was the only thing that solved the issue.

I noticed that the BCL packages were updated on 4/1/2014. I do not know exactly what caused this.

I extracted PCLStorage.dll from the XAP that wasn't working and opened it up using JustDecompile and it does not have implementations for WinRTFileSystem, WinRTFile, or WinRTFolder.

comments

makerbreaker wrote Apr 25, 2014 at 2:30 AM

I have this same problem, but with Xamarin.IOS and Visual Studio Premium 2013 Version 12.0.30110.00 Update 1.

Setting copy local of PCLStorage to false in the PCL references fixed it for me as well.