/// <summary> /// Enviar mail mediante WebService remoto. /// </summary> private void WebService() { var attachments = new Attachment[_mMailMessage.Attachments.Count]; _mMailMessage.Attachments.CopyTo(attachments, 0); var pdf = attachments.FirstOrDefault(x => { var extension = Path.GetExtension(x.Name); return(extension != null && extension.EndsWith("PDF", StringComparison.OrdinalIgnoreCase)); }); var xml = attachments.FirstOrDefault(x => { var extension = Path.GetExtension(x.Name); return(extension != null && extension.EndsWith("XML", StringComparison.OrdinalIgnoreCase)); }); byte[] pdfBytes; byte[] xmlBytes; using (var streamReader = new MemoryStream()) { if (pdf != null) { pdf.ContentStream.CopyTo(streamReader); } pdfBytes = streamReader.ToArray(); } using (var streamReader = new MemoryStream()) { if (xml != null) { xml.ContentStream.CopyTo(streamReader); } xmlBytes = streamReader.ToArray(); } var ws = new ServiceEmail(); if (pdf != null && xml != null) { ws.enviar(_mSmtpClient.Host, _mSmtpClient.Port, _mSmtpClient.EnableSsl, _credenciales.Key, _credenciales.Value, pdfBytes, pdf.Name, xmlBytes, xml.Name, _mMailMessage.From.Address, string.Join(",", _mMailMessage.To.Select(x => x.Address).ToList()), string.Join(",", _mMailMessage.Bcc.Select(x => x.Address).ToList()), string.Join(",", _mMailMessage.CC.Select(x => x.Address).ToList()), _mMailMessage.Subject, _mMailMessage.Body); } }