Builder Pattern C 流利的 Interrface
public class Email
{
    public string To { get; set; }
    public string From { get; set; }
    public string Subject { get; set; }
    public string Body { get; set; }
}
public class EmailBuilder
{
    private readonly Email _email;
    public EmailBuilder()
    {
        _email = new Email();
    }
    public EmailBuilder To(string address)
    {
        _email.To = address;
        return this;
    }
    public EmailBuilder From(string address)
    {
        _email.From = address;
        return this;
    }
    public EmailBuilder Subject(string title)
    {
        _email.Subject = title;
        return this;
    }
    public EmailBuilder Body(string content)
    {
        _email.Body = content;
        return this;
    }
    public Email Build()
    {
        return _email;
    }
}
用法示例:
var emailBuilder = new EmailBuilder();
var email = emailBuilder
    .To("email1@email.com")
    .From("email2@email.com")
    .Subject("Email subject")
    .Body("Email content")
    .Build();