В принципе. У меня есть этот проект, и я подключаюсь к таблицам из баз данных и спискам, которые мне нужны. Нет. Я пытаюсь отправить электронное письмо, которое отлично работает. Мои единственные проблемы - это то, что положить в тело сообщения данные, перечисленные в консольном приложении, для показа в письме. Ниже мой код.Ввод списка данных из базы данных в электронное письмо
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net.Mail;
using System.Net;
namespace sql_connection
{
class Program
{
static void Main(string[] args)
{
string conn = null;
SqlConnection connection;
conn= ("Data Source=Databse\\SQL2012;Initial Catalog=Data_base;User ID=user;Password=example");
connection = new SqlConnection(conn);
try{
connection.Open();
Console.WriteLine("Connection Open!");
SqlCommand cmd = new SqlCommand("SELECT [Data_base].[dbo].[tb_Work].Date,[Data_base].[dbo].[tb_Work].FromTime,[Data_base].[dbo].[tb_Work].ToTime, [Data_base].[dbo].[tb_Work].User,[Data_base].[dbo].[tb_Login].Email FROM [Data_base].[dbo].[tb_Work]INNER JOIN [Data_base].[dbo].[tb_Login] ON [Data_base].[dbo].[tb_Work].whd_User = [Data_base].[dbo].[tb_Login].Login WHERE DATEDIFF(DAY,[Date],GETDATE())<=7 AND (ToTime = '' OR ToTime IS NULL) AND(User=Login)");
cmd.Connection = connection;
SqlDataReader reader = cmd.ExecuteReader();
while(reader.Read())
{
Console.WriteLine("{4},{3},{2}, {1}, {0}",
reader["ToTime"] == DBNull.Value? "NULL" : reader["ToTime"].ToString(),
reader["FromTime"] == DBNull.Value? "NULL" : reader["FromTime"].ToString(),
reader["Date"].ToString(),
reader["User"].ToString(),
reader["Email"].ToString());
}
connection.Close();
MailAddress to = new MailAddress("[email protected]");
MailAddress from = new MailAddress("[email protected]");
MailMessage mail = new MailMessage(from, to);
mail.Subject = ("subject");
mail.Body = (reader["ToTime"] == DBNull.Value? "NULL" : reader["ToTime"].ToString(),
reader["FromTime"] == DBNull.Value? "NULL" : reader["FromTime"].ToString(),
reader["Date"].ToString(),
reader["User"].ToString(),
reader["Email"].ToString());
);
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.Port = 587;
smtp.Credentials = new NetworkCredential(
"[email protected]", "pass");
smtp.EnableSsl = true;
Console.WriteLine("Sending email..");
smtp.Send(mail);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
Как вы можете видеть в Mail.body я попытался поставить еще раз, что я положил в Console.WriteLine, который сделал все, что нужно показать, но по какой-то причине он не хочет работать.
привет, я думаю, что это должно работать единственная проблема в list.add (s) слово add it говорит, что tdoes не содержит определения для добавления – bobby
никогда не работал, просто добавил, начать в столице A – bobby
извините, отредактируйте его – Schuere