Storing User Configurations in .Net 1.1

 .Net 2.0 will introduce My.Settings to store user preferences. For .Net 1.1 i wanted to use approach described by Rockford Lhotka in MSDN article “Storing User Configurations”. It requires to create derived class with properties that you want to store.

I found 2 tips when created the derived class that is using IsolatedStorage.

1. Ignore FileNotFoundException error when load storage the first time.
2. Use assignment with cast when Load class from storage, e.g.

See the sample derived class below:

      public class MySettings: vbUserSettings.UserSettingsBase

      {//based on

            //in .Net 2.0 will be replaced with My.Settings 


            public MySettings(): base()//required for serialization


            public MySettings(vbUserSettings.UserStorageOption StorageOption): base(StorageOption)



            /// <summary>

            /// Loads casted object

            /// </summary>

            /// <returns></returns>

            /// <remarks> IMPORTANT: return value of the function should be used</remarks>

            /// <example>

            ///         MySettings=MySettings.Load();

            ///     MySettings.Load();// Incorrect!!, the cast is not applied and derived class properties are not assigned

            /// </example>

            public  MySettings Load()




                        return (MySettings)Restore();


                  catch (vbUserSettings.UserSettingsException  exc) //System.IO.FileNotFoundException



                        //new file, ignore the error


                  return this;     


            //Derived class properties and fields

            public ImportModeEnum importMode;