Bug 1674 - IsolatedStorageSettings missing from System.IO
Summary: IsolatedStorageSettings missing from System.IO
Alias: None
Product: iOS
Classification: Xamarin
Component: BCL Class Libraries ()
Version: 4.x
Hardware: All All
: --- enhancement
Target Milestone: Future Cycle (TBD)
Assignee: Bugzilla
Depends on:
Reported: 2011-10-24 20:32 UTC by Dominique
Modified: 2016-12-22 14:13 UTC (History)
10 users (show)

Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Dominique 2011-10-24 20:32:53 UTC
Rather than a bug this is an enhancement, but I couldn't find the option for enhancements, I hope you can move it to the right place.

IsolatedStorageSettings is missing form System.IO as per Microsoft's documentation...


Please add it in.
Comment 1 Sebastien Pouliot 2011-10-25 15:57:11 UTC
-> enhancement

This type is available on Silverlight (not the full framework) inside System.Windows.dll. I guess we could add it into monotouch.dll (that would work for compile-time compatibility).

We do have an implementation on Moonlight - but that's likely not a good idea to use it "as-is" since:

* the System.IO.IsolatedStorage API from Silverlight is different from the full framework (on which the MOBILE profile is based);

* for compatibility with silverlight the moonlight version uses the DataContractSerializer which is not ideal since it would add another dependency to monotouch.dll

OTOH the linker has been updated to better detect XML/DataContract serialization usage.
Comment 2 Dominique 2011-10-25 18:47:48 UTC
Thanks for moving it to an enhancement.

The reason why I'm asking for it, is people porting their games from XNA and WP7 to MonoGame expect it to be there. For example - http://stackoverflow.com/questions/3962673/can-an-xna-game-use-isolatedstoragesettings-for-wp7
Comment 3 Sebastien Pouliot 2011-10-26 08:48:30 UTC
I'll look into it :) since I did the original code and since it can become a linker test case too
Comment 4 Sebastien Pouliot 2011-11-16 09:30:00 UTC
Eric, is this something you already had on your radar ?
Comment 5 Eric Maupin 2011-11-17 08:48:48 UTC
(In reply to comment #4)
> Eric, is this something you already had on your radar ?
Not currently, no.
Comment 6 Chris 2012-12-21 10:51:20 UTC
Please add this as without it porting from Windows Mobile and Mono Android is more difficult that it needs to be.
Comment 7 Roger Peters 2013-02-25 23:42:58 UTC
I'd just like to echo the request for support for IsolatedStorageSettings. Now I need to figure out how to serialize my objects (and their images) without it..
Comment 8 SCSMobility 2013-03-25 10:46:47 UTC
Supporting also Roger and others. Support would be really needed and would help our work. Now we need to make workarounds for each target to overcome missing functionality.
Comment 9 SCSMobility 2013-03-28 06:34:30 UTC
Any updates from on Xamarin behalf, do you have the latest estimate for this?
Comment 10 Sebastien Pouliot 2013-03-28 09:01:25 UTC
There's no immediate plans, for the typeitself or other parts oif System.Windows.dll.

However the source code for Moonlight's IsolatedStorageSettings [1] is available (small and fully managed) and can be included inside your own applications (or built in a seperate assembly for reuse* accross projects).

It might require a few modifications since Silverlight API for System.IO.IsolatedStorage is not 100% compatible with the "desktop" version of the Framework (which Xamarin products follows). OTOH it should be very small changes (the source itself is very small).

* If anyone does port it and wants to share then I suggest you to submit it to the component store.

[1] https://github.com/mono/moon/blob/master/class/System.Windows/System.IO.IsolatedStorage/IsolatedStorageSettings.cs
[2] http://components.xamarin.com
Comment 11 Sebastien Pouliot 2016-12-22 14:13:22 UTC
This is not part of NET Standard and will not be added inside the SDK.