internal void ParseCharacters(SqlDataManager sdm, List <Signal> allSignals) { var charSequenceWhere = String.Format("CharacterId IN (SELECT CharacterId from Character where AlphabetId = '{0}')", this.AlphabetId); var charSequences = sdm.GetAllCharacterSquences <CharacterSquence>(charSequenceWhere); foreach (var charToCheck in this.Characters) { charToCheck.LoadCharacterSquences(charSequences); charToCheck.ParseSequence(sdm, allSignals); } }
/// <summary> /// Check to see if there are any related CharacterSquences, and load them if requested /// </summary> public static void CheckExpandCharacterSquences(SqlDataManager sdm, IEnumerable <Character> characters, string expandString) { var charactersWhere = CreateCharacterWhere(characters); expandString = expandString.SafeToString(); if (String.Equals(expandString, "all", StringComparison.OrdinalIgnoreCase) || expandString.IndexOf("characterSquences", StringComparison.OrdinalIgnoreCase) >= 0) { var childCharacterSquences = sdm.GetAllCharacterSquences <CharacterSquence>(charactersWhere); characters.ToList() .ForEach(feCharacter => feCharacter.LoadCharacterSquences(childCharacterSquences)); } }
private void EnsureLoaded() { var sdm = new SqlDataManager(); var charWhere = String.Format("AlphabetId = '{0}'", this.AlphabetId); var chars = sdm.GetAllCharacters <Character>(charWhere); this.Characters.Clear(); chars.ForEach(feChar => this.Characters.Add(feChar)); var charSequenceWhere = String.Format("CharacterId IN (SELECT CharacterId from Character where AlphabetId = '{0}')", this.AlphabetId); var charSequences = sdm.GetAllCharacterSquences <CharacterSquence>(charSequenceWhere); foreach (var charToCheck in this.Characters) { charToCheck.LoadCharacterSquences(charSequences); } }