Пример #1
0
        /// <summary>
        /// Constructor for the Application object.
        /// </summary>
        public App()
        {
            // Global handler for uncaught exceptions.
            UnhandledException += Application_UnhandledException;

            // Standard Silverlight initialization
            InitializeComponent();

            // Phone-specific initialization
            InitializePhoneApplication();

            // Show graphics profiling information while debugging.
            if (System.Diagnostics.Debugger.IsAttached)
            {
                // Display the current frame rate counters.
                // Application.Current.Host.Settings.EnableFrameRateCounter = true;

                // Show the areas of the app that are being redrawn in each frame.
                //Application.Current.Host.Settings.EnableRedrawRegions = true;

                // Enable non-production analysis visualization mode,
                // which shows areas of a page that are handed off to GPU with a colored overlay.
                //Application.Current.Host.Settings.EnableCacheVisualization = true;

                // Disable the application idle detection by setting the UserIdleDetectionMode property of the
                // application's PhoneApplicationService object to Disabled.
                // Caution:- Use this under debug mode only. Application that disables user idle detection will continue to run
                // and consume battery power when the user is not using the phone.
                PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled;
            }

            using (Database db = new Database(DBLocation))
            {
                //Inorder to clean the db uncomment the next line (or, if debugging, rebuild solution)
                //db.DeleteDatabase();
                if (!db.DatabaseExists())
                {
                    db.CreateDatabase();
                }
                db.SubmitChanges();
            }

            DataBaseUtility = new DataUtil(DBLocation);

            bool firstRun = false;
            //Check if it is running for the first time...
            IsolatedStorageSettings.ApplicationSettings.TryGetValue("firstRun", out firstRun);
            if (!firstRun)
            {
                isFirstTime = true;
                Settings settings = new Settings();
                settings.ReportLimit = 100;
                settings.Distance = 100;
                settings.Location = new System.Device.Location.GeoCoordinate(-1, 36);

                //Show application Dialog.
                IsolatedStorageSettings.ApplicationSettings.Add("settings", settings);
                IsolatedStorageSettings.ApplicationSettings.Add("firstRun", true);
                IsolatedStorageSettings.ApplicationSettings.Save();
                GlobalSettings = settings;
            }
            else
            {
                isFirstTime = false;
                //Pull settings from isolated storage
                Settings settings = new Settings();
                IsolatedStorageSettings.ApplicationSettings.TryGetValue("settings", out settings);
                GlobalSettings = settings;

            }
        }
Пример #2
0
 // note: could also have used a lock rather than a mutex.
 // A lock protects against cross-thread access to the data context.
 // The mutex additionally protects against cross-process access.
 //Contructor to initialize the database
 public DataUtil(string dbConnectionString)
 {
     db = new Database(dbConnectionString);
 }