0 votes


is it possible to create a mail with a table (like in the template sample), but with a attachment in each line (referenced e.x. in the data source as a UNC path etc)?

It should look somehow like this:

| Name | Type | Attachment |

| acb | xls | abc.xls |

| xyz | txt | xyz.txt |

Thanks in advance

by (300 points)

1 Answer

0 votes

The code below should help. It uses Mail.dll email template engine and MeilBuilder class to create an email with rendered template and attachments:

public class AttchmentInfo
    public string FullPath;
    public string Name => Path.GetFileNameWithoutExtension(FullPath);
    public string Extension => Path.GetExtension(FullPath);

public class TemplateData
    public List<AttchmentInfo> Attachments;

public void Method_Condition_Result()

    string template = @"<table>
        [foreach Attachments]


    TemplateData templateData = new TemplateData
        Attachments = new List<AttchmentInfo>
            new AttchmentInfo {FullPath = "c:\\Test.pdf"},
            new AttchmentInfo {FullPath = "c:\\Test2.pdf"},
    string rendered = Template.Create(template)

    var builder = new MailBuilder();
    builder.Subject = "Subject";
    builder.From.Add(new MailBox("from@example.com"));
    builder.To.Add(new MailBox("from@example.com"));
    builder.Html = rendered;

    foreach (var info in templateData.Attachments)
    IMail mail = builder.Create();

by (298k points)
Attachments inline in table column