Smrf.NodeXL.ExcelTemplate.EmailExporter.AddAlternateHtml C# (CSharp) Method

AddAlternateHtml() protected method

protected AddAlternateHtml ( MailMessage oMailMessage, Byte abtFullSizeImage ) : void
oMailMessage System.Net.Mail.MailMessage
abtFullSizeImage Byte
return void
    AddAlternateHtml
    (
        MailMessage oMailMessage,
        Byte [] abtFullSizeImage
    )
    {
        Debug.Assert(oMailMessage != null);
        Debug.Assert(abtFullSizeImage != null);
        AssertValid();

        String sHtml =
            "<html>"
            +     "<head>"
            +     "</head>"
            +     "<body>"
            ; 

        String sMessageBody = oMailMessage.Body;
        Boolean bGraphImageMacroReplaced = false;

        if ( !String.IsNullOrEmpty(sMessageBody) )
        {
            bGraphImageMacroReplaced = TryReplaceGraphImageMacro(
                ref sMessageBody);

            sHtml +=
                      "<div>"
                +          sMessageBody.Replace("\r\n", "<br />")
                +     "</div>"
                ;
        }

        sHtml +=
                  "</body>"
            + "</html>"
            ;

        AlternateView oHtmlView = AlternateView.CreateAlternateViewFromString(
            sHtml, null, "text/html");
        
        if (bGraphImageMacroReplaced)
        {
            AddLinkedResourceForFullSizeImage(abtFullSizeImage, oHtmlView);
        }

        oMailMessage.AlternateViews.Add(oHtmlView);
    }