public static void LoadStateKeys() { if (Monitor.TryEnter(sync)) { try { if (File.Exists(fileStateKeys)) { using (FileStream fs = File.OpenRead(fileStateKeys)) { stateKeys = Serialization.Deserialize(fs) as DodoStateKeys; stateKeys.mainCount = stateKeys.totalRecords; } } else { stateKeys = new DodoStateKeys(); stateKeys.totalRecords = CurrentDb.GetTotalRecords(); stateKeys.mainCount = stateKeys.totalRecords; SaveStateKeys(); } } finally { Monitor.Exit(sync); } } }