@Ciganqwer1

Как сделать путь к файлу через textbox?

Пишу простенькую програмку по отправке файла по почте. Файл она сама должна брать и сохранять по указанному пользователем пути.
Есть такой кусок кода
SmtpClient Client = new SmtpClient(textBox1.Text, 587);
            Client.Credentials = new NetworkCredential(textBox2.Text, textBox3.Text);
            Client.EnableSsl = true;
            string from =textBox4.Text;
            string to = textBox4.Text;
            string subject =textBox5.Text;
            string text = "";
            MailMessage mas = new MailMessage(from, to, subject, text);
            Attachment file1 = new Attachment(@"",textBox9.Text+"1.png");

mas.Attachments.Add(file1);
            Client.Send(mas);
            Client.Dispose();
            file1.Dispose();


здесь
Attachment file1 = new Attachment(@"",textBox9.Text+"1.png");
выдает ошибку
System.ArgumentException: "Параметр 'fileName' не может быть пустой строкой.
Имя параметра: fileName"

Как правильно написать чтобы оно брало файл от куда надо?
Заранее благодарю.
  • Вопрос задан
  • 549 просмотров
Решения вопроса 1
AlekseyNemiro
@AlekseyNemiro
full-stack developer
Видимо нужно указать имя файла в первом параметре:
var file1 = new Attachment(textBox9.Text + "1.png");

Вторым параметром может быть указан тип содержимого, в данном случае image/png:

var file1 = new Attachment(textBox9.Text + "1.png", "image/png");


PS: Для объединения путей лучше использовать функцию System.IO.Path.Combine(), это избавит от проблем со слешами:
var file1 = new Attachment(Path.Combine(textBox9.Text, "1.png"), "image/png");
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы