SmtpClient.send - не удалось найти часть пути - PullRequest
1 голос
/ 15 марта 2019

Я пытаюсь написать письмо в мою локальную папку.Я успешно написал электронное письмо в папку с документами, используя этот код:

using (var client = new SmtpClient())
{
    client.UseDefaultCredentials = true;
    client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
    client.PickupDirectoryLocation = tempDocsPath;
    client.Send(message);//Writes to the PickupDirectoryLocation
}

Однако, когда я перенес этот же код в другой проект, он выдает мне эту ошибку:

Система.Net.Mail.SmtpException: ошибка отправки почты.---> System.IO.DirectoryNotFoundException: Не удалось найти часть пути «C: \ Users \ josh.bowdish \ источник \ Repos \ GenerateEmail \ GenerateEmail \ Bin \ Debug \ net461 \ TempFiles \ AAMkAGUyODNhN2JkLThlZWQtNDE4MS1hODM1LWU0ZDY4Y2NhYmMxOQBGAAAAAABKB1jlHZSIQZSWN7AYZH2SBwDZdOTdKcayQ5NMwcwkNT7UAAAAAAEMAADZdOTdKcayQ5NMwcwkNT7UAACn \ 0a5b24a5-d625-4ecd-9990-af5654679820.eml '.

Я проверил, что каталог, в который он пытается записать, существует, даже переписал его, чтобы он выглядел так:

   private static string WriteEmail(MailMessage message, string messageDirectory)
    {
        if (Directory.Exists(messageDirectory))
        {
            using (var client = new SmtpClient())
            {
                client.UseDefaultCredentials = true;
                client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
                client.PickupDirectoryLocation = messageDirectory;
                client.Send(message);//Writes to the PickupDirectoryLocation
            }
            ...
        }
        //stuff that returns the full email path
    }

Эторазрывы на строке client.Send () с указанной выше ошибкой.Насколько я могу судить, пути кода идентичны.Я попытался записать в ту же папку, с которой работает другой проект, но безрезультатно.Единственное, о чем я могу думать, - это пытаться написать файл электронной почты до того, как он существует, но другой проект пишет его просто отлично.

Может кто-нибудь сказать мне, что вызывает эту ошибку?

Спасибо,

~ Джош

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