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.
 
 MySettings=MySettings.Load();

See the sample derived class below:

      public class MySettings: vbUserSettings.UserSettingsBase

      {//based on http://msdn.microsoft.com/library/en-us/dnadvnet/html/vbnet07082003.asp

            //in .Net 2.0 will be replaced with My.Settings  http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvs05/html/vbmysettings.asp 

            //Constructors

            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()

            {

                  try

                  {

                        return (MySettings)Restore();

                  }

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

                  {

                        Debug.WriteLine(exc.ToString());

                        //new file, ignore the error

                  }

                  return this;     

            }

            //Derived class properties and fields

            public ImportModeEnum importMode;

      }

 

posted @ Tuesday, October 25, 2005 8:56 AM

Print

Comments on this entry:

# re: Storing User Configurations in .Net 1.1

Left by kedar at 7/25/2006 8:06 PM
Gravatar
gr8 but an example is really appreciated

Your comment:



 (will not be displayed)


 
 
 
Please add 1 and 5 and type the answer here:
 

Live Comment Preview:

 
«December»
SunMonTueWedThuFriSat
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910