Just an example:
public class MailMessage
{
public string From{get;set;}
public string To{get;set;}
public string Body{get;set;}
public string Subject{get;set;}
....
}
public interface IMailService
{
Send(MailMessage m);
}
specific implementations:
public class GoogleMail : IMailService
{
public Send(Message msg)
{
}
}
public class YahooMail : IMailService
{
public Send(Message msg)
{
}
}
.... Hotmail,...
somewhere in the code, create a collection of supported mail services
var mailservices = new List<IMailService>();
mailservices.Add(new GoogleMail ());
mailservice.Add(new YahooMail ());
after starting the program, select the appropriate service to continue the user’s request.
source
share