public MailOperation(MailConnection connection, IParameters parameters) : base(string.Empty, string.Empty) { _connection = connection; _parameters = parameters; _hasCc = parameters.ContainsName("cc"); _ccKey = _hasCc ? parameters.GetKeyByName("cc") : string.Empty; _hasBcc = parameters.ContainsName("bcc"); _bccKey = _hasBcc ? parameters.GetKeyByName("bcc") : string.Empty; _hasSubject = parameters.ContainsName("subject"); _subjectKey = _hasSubject ? parameters.GetKeyByName("subject") : string.Empty; if (!parameters.ContainsName("from")) { throw new TransformalizeException(Logger, EntityName, "Mail transform requires parameter named from."); } _fromKey = parameters.GetKeyByName("from"); if (!parameters.ContainsName("to")) { throw new TransformalizeException(Logger, EntityName, "Mail transform requires parameter named to."); } _toKey = parameters.GetKeyByName("to"); if (!parameters.ContainsName("body")) { throw new TransformalizeException(Logger, EntityName, "Mail transform requires parameter named body."); } _bodyKey = parameters.GetKeyByName("body"); Name = "Mail"; }