private TopPersonProvider() { var saved = serializer.Deserialize<DataInternal>(FILE); if (saved == null) { Update(); } else { data = saved; } }
private void Save(List<Person> result) { if (data == null) { data = new DataInternal(); } if (data.TopPersons == null) { data.TopPersons = new List<Person>(); } if (data.PreferMost == null) { data.PreferMost = new List<string>(); } data.LastUpdateTime = DateTime.Now; data.TopPersons.Clear(); foreach (var p in result) { data.TopPersons.Add(p); } if (data.PreferMost.Count == 0) { int max = Math.Min(result.Count, 8); var list = result.Take(max); foreach (var item in list) { data.PreferMost.Add(item.Name); } } serializer.Serialize(FILE, data); }