/// <summary> /// Junta varios boletos em uma unica AlternateView, para todos serem mandados juntos no mesmo email /// </summary> /// <param name="textoNoComecoDoEmail">Texto em HTML a ser adicionado no comeco do email</param> /// <param name="arrayDeBoletos">Array contendo os boletos a serem mesclados</param> /// <returns>AlternateView com os dados de todos os boleto.</returns> public static AlternateView GeraHtmlDeVariosBoletosParaEmail(this BoletoBancario b, string textoNoComecoDoEmail, BoletoBancario[] arrayDeBoletos) { var corpoDoEmail = new StringBuilder(); var linkedResources = new List <LinkedResource>(); BoletoBancario.HtmlOfflineHeader(corpoDoEmail); if (textoNoComecoDoEmail != null && textoNoComecoDoEmail != "") { corpoDoEmail.Append(textoNoComecoDoEmail); } foreach (var umBoleto in arrayDeBoletos) { if (umBoleto != null) { LinkedResource lrImagemLogo; LinkedResource lrImagemBarra; LinkedResource lrImagemCodigoBarra; umBoleto.GeraGraficosParaEmailOffLine(out lrImagemLogo, out lrImagemBarra, out lrImagemCodigoBarra); //var theOutput = umBoleto.MontaHtml( // "cid:" + lrImagemLogo.ContentId, // "cid:" + lrImagemBarra.ContentId, // "<img src=\"cid:" + lrImagemCodigoBarra.ContentId + "\" alt=\"Código de Barras\" />"); var theOutput = umBoleto.Boleto.Montar(); corpoDoEmail.Append(theOutput); linkedResources.Add(lrImagemLogo); linkedResources.Add(lrImagemBarra); linkedResources.Add(lrImagemCodigoBarra); } } BoletoBancario.HtmlOfflineFooter(corpoDoEmail); AlternateView av = AlternateView.CreateAlternateViewFromString(corpoDoEmail.ToString(), Encoding.Default, "text/html"); foreach (var theResource in linkedResources) { av.LinkedResources.Add(theResource); } return(av); }
public static StringBuilder HtmlOffLine(this BoletoBancario b, string textoNoComecoDoEmail, string srcLogo, string srcBarra, string srcCodigoBarra, bool usaCSSPDF = false) {//protected StringBuilder HtmlOffLine(string srcCorte, string srcLogo, string srcBarra, string srcPonto, string srcBarraInterna, string srcCodigoBarra) //this.OnLoad(EventArgs.Empty); StringBuilder html = new StringBuilder(); BoletoBancario.HtmlOfflineHeader(html, usaCSSPDF); if (textoNoComecoDoEmail != null && textoNoComecoDoEmail != "") { html.Append(textoNoComecoDoEmail); } if (srcLogo != null) { b.Boleto.Cedente.Logo = srcLogo; } html.Append(b.Boleto.Montar()); BoletoBancario.HtmlOfflineFooter(html); return(html); }