C#将Console.Writeline输出转换为String以用于电子邮件

时间:2014-06-17 03:05:59

标签: c# php email

我有一个C#Console应用程序,它输出从mySQL获取的数据,但输出需要通过SMTP(Gmail)发送/重定向到电子邮件。是否可以将所有输出转换为字符串或流,如PHP,它可以读取所有输出并在messages下的电子邮件中回显它们?

代码示例:

myReader = myCommand.ExecuteReader();
while (myReader.Read())
{
    string datetype = (myReader["Expiry_Date"].ToString());
    DateTime dateformat = DateTime.Parse(datetype); 

    if(dateformat.Date <= calDate3b && dateformat.Date>=timenow)
    {
        Console.WriteLine(myReader["Number"].ToString());
        Console.WriteLine(myReader["Name"].ToString());
        Console.WriteLine(myReader["Number_Yolo"].ToString());
        Console.WriteLine(myReader["Date"].ToString());

        Console.WriteLine();                        
    }
}

Console.WriteLine("Your Message");
mail.Body = <contains the console output>;

我尝试了StreamOutput,但它不起作用。

1 个答案:

答案 0 :(得分:0)

myReader = myCommand.ExecuteReader();
var message = new StringBuilder();
        while (myReader.Read())
        {
            string datetype = (myReader["Expiry_Date"].ToString());
            DateTime dateformat = DateTime.Parse(datetype); 

            if(dateformat.Date <= calDate3b && dateformat.Date>=timenow)
            {
                message.AppendLine(myReader["Number"].ToString());
                message.AppendLine(myReader["Name"].ToString());
                message.AppendLine(myReader["Number_Yolo"].ToString());
                message.AppendLine(myReader["Date"].ToString());
                message.AppendLine();                    
            }
        }

Console.WriteLine(message.ToString());
mail.Body = message.ToString();