SSIS - перенаправление электронной почты в папку - PullRequest
0 голосов
/ 11 сентября 2018

Я генерирую электронные письма из пакета служб SSIS с помощью задачи «Сценарий».Во время тестирования я не хочу действительно отправлять электронную почту, а помещаю сообщение в папку.В приложении я бы использовал параметр указанныйPickupDirectory в файле web.config, но в пакетах служб SSIS нет файла web.config.

Можно ли отправить сообщение электронной почты в папку?

Спасибо

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Если вы используете почту Exchange и эту библиотеку: http://independentsoft.de/, вы можете создать сообщение и переместить его в определенную папку.

У меня нет этой программы, но я довольный пользователь.

Просто начните здесь: http://independentsoft.de/exchangewebservices/tutorial/createmessage.html с этим примером кода:

using System;
using System.Net;
using Independentsoft.Exchange;

namespace Sample
{
    class Program
    {
        static void Main(string[] args)
        {
            NetworkCredential credential = new NetworkCredential("username", "password");
            Service service = new Service("https://myserver/ews/Exchange.asmx", credential);

            try
            {
                Message message = new Message();
                message.Subject = "Test";
                message.Body = new Body("Body text");
                message.ToRecipients.Add(new Mailbox("John@mydomain.com"));
                message.CcRecipients.Add(new Mailbox("Mark@mydomain.com"));

                ItemId itemId = service.CreateItem(message);
            }
            catch (ServiceRequestException ex)
            {
                Console.WriteLine("Error: " + ex.Message);
                Console.WriteLine("Error: " + ex.XmlMessage);
                Console.Read();
            }
            catch (WebException ex)
            {
                Console.WriteLine("Error: " + ex.Message);
                Console.Read();
            }
        }
    }
}
0 голосов
/ 11 сентября 2018

Если ваша задача сценария использует C #, то должно работать следующее. Это похоже на то, как вы изменили бы Web.config для использования specifiedPickupDirectory

SmtpClient client = new SmtpClient("my_smtp_host");
client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
client.PickupDirectoryLocation = @"C:\save_email_directory";
client.Send(message);

Вам также может понадобиться добавить Network учетные данные, см. Ссылку, например,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...