void Import(ContactConfiguration config) {

         this.From = config.From;
         this.To = config.To;
         this.CC = config.CC;
         this.Bcc = config.Bcc;
         this.ContactSenderResolver = config.ContactSenderResolver;
      }
      protected override void Initialize(RequestContext requestContext) {
         
         base.Initialize(requestContext);

         this.config = requestContext.RouteData.DataTokens["Configuration"] as ContactConfiguration
            ?? new ContactConfiguration();

         if (this.config.ContactSenderResolver != null)
            this.service = this.config.ContactSenderResolver();

         if (this.service == null)
            this.service = new ContactSender();

         this.service.Configuration = this.config;
      }
      public ContactConfiguration(ContactConfiguration config) {

         if (config == null) throw new ArgumentNullException("config");

         Import(config);
      }