Pergunta

Estou desenvolvendo algum programa em C# que enviará o e -mail usando o Outlook 2007. Para isso, desejo criar uma tabela no corpo de correio e precisar mostrar os dados necessários nele. Alguém pode me informar como podemos criar uma tabela programaticamente no corpo de correio.

Foi útil?

Solução

Basta produzir os dados em uma tabela HTML padrão.

Em seguida, envie -o como um email HTML em vez de texto simples. Aqui está um exemplo rápido e sujo em C#:

MailMessage msg = new MailMessage("From@Email.com", "To@Email.com");
msg.IsBodyHTML = true;
msg.Subject = "Subject line here";
msg.Body = "html goes here";

SmtpClient mailClient = new SmtpClient("YourEmailServer");
mailClient.Send(msg);

Outras dicas

Para criar uma tabela, você pode usar a tag HTML.

<table><tr>....</tr></table>.

Aqui está o código:

MailMessage msg = new MailMessage("From@Email.com", "To@Email.com");
msg.IsBodyHTML = true;
msg.Subject = "Subject line here";
msg.Body = "<table border=1><tr><td>one</td></tr><tr><td>two</td></tr>";

SmtpClient mailClient = new SmtpClient("YourEmailServer");
mailClient.Send(msg);

Espero que isso seja útil para você.

Tente isso

using outlook = Microsoft.Office.Interop.Outlook;

string emailSubject = "Subject of email";   
string htmlString = "<table><tr><td>Hi</td></tr></table>";

outlook.Application outlookApp = new outlook.Application();
outlook.MailItem mailItem = (outlook.MailItem)outlookApp.CreateItem(outlook.OlItemType.olMailItem);
mailItem.Subject = emailSubject;
mailItem.HTMLBody = htmlString;
mailItem.To = "someaddress@someaddress.com";

mailItem.Save();

Isso criará uma nova mensagem na sua pasta Outlook> Drafts com uma única tabela de filas que diz "Oi"

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top