/// <summary> /// get a list of topics /// </summary> public IEnumerable <Topic> GetTopics() { if (_storage.Size == 0) { _storage.UserProperties.Add(TopicDataString, OlUserPropertyType.olText); _storage.UserProperties[TopicDataString].Value = string.Empty; _storage.Save(); } var topicStrings = ((string)_storage.UserProperties[TopicDataString].Value) .Split(new[] { TopicSeperator }, StringSplitOptions.RemoveEmptyEntries); var topics = from t in topicStrings let parts = (t + TopicTitleDescriptionSeperator).Split(new[] { TopicTitleDescriptionSeperator }, StringSplitOptions.None) select new Topic() { Title = parts[0], Description = parts[1] }; return(topics); }