Почта работает, но я хочу отправить два файла excel каждому другому человеку
Я попробовал свой код следующим образом,
Мой код работает, но я хочу, чтобы первый excel отправлялся одному человеку,а другой excel отправлялся другому.
Мой код выглядит следующим образом
int count = 0; string connectionstring = "Server=(local);initial catalog=Test;Trusted_Connection=True"; SqlConnection sqlConnection = new SqlConnection(connectionstring); SqlCommand cmd = new SqlCommand(); SqlDataReader reader; DataSet ds = new DataSet(); cmd.CommandText = "select * from Empdetails"; cmd.CommandText += " where shifttype = @par"; cmd.Parameters.Add("@par",SqlDbType.Int).Value = j; cmd.CommandType = CommandType.Text; cmd.Connection = sqlConnection; sqlConnection.Open(); reader = cmd.ExecuteReader(); if (reader.HasRows) { string filePath = @"C:\Users\God\Desktop\DataDump\" + j + "Excel.xls"; System.IO.StreamWriter sw_In = new System.IO.StreamWriter(filePath); while (reader.Read()) { if (count == 0) { for (int i = 0; i < reader.FieldCount; i++) { sw_In.AutoFlush = true; sw_In.Write(reader.GetName(i) + "\t"); } sw_In.Write("\n"); count = 1; } for (int i = 0; i < reader.FieldCount; i++) { sw_In.AutoFlush = true; sw_In.Write(reader[i].ToString() + "\t"); } sw_In.Write("\n"); } sw_In.Dispose(); MailMessage mis = new MailMessage(); mis.From = new MailAddress("rajesh@gmail.com","Report"); mis.IsBodyHtml = true; mis.To.Add("rajesh@gmail.com"); mis.Subject = "Data Dump Report"; mis.Attachments.Add(new Attachment(filePath, "application/vnd.ms-excel")); SmtpClient smtpserver = new SmtpClient("smtp.gmail.com"); smtpserver.Credentials = new System.Net.NetworkCredential("rajesh@gmail.com", "Password"); smtpserver.Host = "smtp.gmail.com"; smtpserver.Port = 587; smtpserver.EnableSsl = true; smtpserver.Send(mis); } reader.Close(); sqlConnection.Close();
Что я уже пробовал:
Когда я запускаю вышеописанное в папке desktop C 1excel и 2Excel для загрузки в эту папку.
Я отправляю оба файла excel на почту.
Этот файл excel получает почту без проблем.
я получаю как 1Excel, так и 2Excel на [почтовый адрес 1 удален] на эту почту.
Но я хочу, чтобы файл 1Excel был отправлен на [почтовый адрес 1 удален].
И файл 2Excel, который будет отправлен на [почтовый адрес 2 удален].
В моем приведенном выше коде как 1excel, так и 2excel файл получают почту на [почтовый адрес 1 удален].
Для того, какие изменения необходимо сделать в моем коде.
Пожалуйста, помогите мне
Patrice T
Никогда не публикуйте почтовые адреса на общедоступном форуме, если только вы не любите спам.
- удалены почтовые адреса.
[no name]
хорошо, я удалю. пожалуйста, помогите мне дать решение, о котором я уже упоминал.
Спасибо
int count = 0;
connectionString строка = "сервер=(местные);начальный каталог=тест;параметр trusted_connection=истина";
SqlConnection sqlConnection = new SqlConnection(connectionstring);
Команда sqlcommand команду cmd = новый sqlcommand, который();
Читатель SqlDataReader;
DataSet ds = новый набор данных();
cmd. CommandText = " select * from Empdetails";
cmd. CommandText + = " where shifttype = @par";
УМК.Параметры.Добавить("@пар",значения sqldbtype.Инт).Значение = j;
УМК.Свойство Commandtype = Значение Commandtype.Текст;
УМК.Соединение = соединение sqlconnection;
объект sqlconnection.Открыть();
reader = cmd.Метода executereader();
если (читатель.HasRows)
{
строку путь к файлу = @"C:\Users\God\Desktop\DataDump\" + Дж + "Excel.xls";
Системы.ИО.Sw_In модулю записи StreamWriter = новая система.ИО.Модулю записи StreamWriter(путь_к_файлу);
в то время как (читатель. читать())
{
if (count == 0)
{
for (int i = 0; i & lt; reader.FieldCount; i++)
{
sw_In.Автосброс = истина;
sw_In.Пиши (читатель.GetName(i) + " \t");
}
sw_In.Напишите ("\n");
количество = 1;
}
for (int i = 0; i & lt; reader.FieldCount; i++)
{
sw_In.Автосброс = истина;
sw_In.Напишите (читатель[i].ToString () + " \t");
}
sw_In.Напишите ("\n");
}
sw_In.Располагать();
Получить помощь МО = Новый получить помощь();
МИС.From = new MailAddress ("FirstMailid", " Report");
МИС.IsBodyHtml = true;
МИС.Для.Добавить("FirstMailid");
МИС.Тема = "Дамп Данных Отчета";
МИС.Вложения.Add (new Attachment(filePath, " application/vnd. ms-excel"));
SmtpClient smtpserver = новый SmtpClient("smtp.gmail.com");
smtpserver.Учетные данные = new System. Net. NetworkCredential ("Firstmailid", " Password");
smtpserver.Хост = "smtp.gmail.com";
smtpserver.Порт = 587;
smtpserver.EnableSsl = true;
smtpserver.Отправить (mis);
}
читатель.Закрывать();
объект sqlconnection.Закрывать();
Когда я запускаю вышеописанное в папке desktop C 1excel и 2Excel для загрузки в эту папку.
Я отправляю оба файла excel на почту.
Этот файл excel получает почту без проблем.
я получаю как 1Excel, так и 2Excel на [почтовый адрес 1 удален] на эту почту.
Но я хочу, чтобы файл 1Excel был отправлен на [почтовый адрес 1 удален].
И файл 2Excel, который будет отправлен на [почтовый адрес 2 удален].
В моем приведенном выше коде как 1excel, так и 2excel файл получают почту на [почтовый адрес 1 удален].
Для того, какие изменения необходимо сделать в моем коде.
Пожалуйста, помогите мне
Patrice T
Не нужно перепечатывать свой вопрос в комментарии.
Richard MacCutchan
Мы уже несколько раз объясняли оба вопроса, но, похоже, вы либо не читаете ответы, либо просто игнорируете их и перепечатываете более или менее один и тот же вопрос снова.