ProcessStartInfo Несколько аргументов - PullRequest
0 голосов
/ 08 ноября 2011

У меня есть веб-форма ASP.NET, время которой истекло при отправке более 1800 электронных писем, адреса которых были получены из БД.Поэтому я пытаюсь вместо этого отправлять электронные письма из консольного приложения - я получу доступ к БД там.

Мне нужно передать строку темы и текст сообщения в качестве параметров ProcessStartInfo метод, но нужно руководство с синтаксисом.Кто-нибудь может помочь?В частности, если я объединю переменные субъекта и тела и разделю их пробелами, будет ли этого достаточно, или пробелы в переменных вызовут проблемы?

1 Ответ

2 голосов
/ 08 ноября 2011

И тема, и тема письма должны уже содержать пробелы, поэтому вам нужно соблюдать те же правила, что и при вызове программы из командной строки, и заключать в " аргументы, содержащие пробелы, в противном случае каждый пробел в темебудет ограничивать новый аргумент.

Другой особый случай, если субъект и тело уже содержат символ ", поэтому вам также необходимо учитывать это.

Я думаю, что это должно сработать:

string subject = "Hello World!";

string body = @"This has "" quotes """;

string arguments = string.Format(
    @"""{0}"" ""{1}""", 
    subject.Replace(@"""", @""""""),
    body.Replace(@"""", @""""""));
...