Sample SendMail CodeActivity for WF4

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Activities;
using System.Net.Mail;
using System.Net;
 
namespace MDM.Workflow.Activities.Core
{
    public class SendMail : CodeActivity<SmtpStatusCode>
    {
        public InArgument<string> SmtpHost { getset; }
        public InArgument<int> Port { getset; }
        public InArgument<bool> UseDefaultCredentials { getset; }
        public InArgument<NetworkCredential> Credentials { getset; }
        public InArgument<MailMessage> Message { getset; }
        
        protected override SmtpStatusCode Execute(CodeActivityContext context)
        {
            try
            {
                SmtpClient SmtpClient1 = new SmtpClient(SmtpHost.Get(context));
                SmtpClient1.Port = Port.Get(context);
                SmtpClient1.UseDefaultCredentials = UseDefaultCredentials.Get(context);
 
                if (!SmtpClient1.UseDefaultCredentials)
                    SmtpClient1.Credentials = Credentials.Get(context);
 
                SmtpClient1.Send(Message.Get(context));
            }
            catch (SmtpException smtpEx)
            {
                return smtpEx.StatusCode;
            }
 
            return SmtpStatusCode.Ok;
        }
    }
 
}

Comments