public override void AddToDictionary(MessageDictionary dictionary, MethodInfo info) { var keyList = _parser.Parse(_keyList); if (keyList.Count() != _charList.Length) throw new Exception("CharacterMapAttribute requires the key list and the character list to be of identical length"); keyList.Do( (i, key) => dictionary.AddKey(_mode, key, BuildMessage(info, _charList[i]))); }