I'm making program that sends email with some data. I know that the System.ArgumentOutOfRangeException
exception means that number in the array/list doesn't exist, but i don't know what i coded wrongly.
Here's a code:
public void SendMail()
{
StreamReader sr = new StreamReader(path1);
var lineCount = File.ReadLines(path1).Count();
List<string> data = new List<string>();
for (int i = 0; i < lineCount; i++)
{
data[i] = sr.ReadLine(); //Error Comes here.
}
string finaldata = data[0] + "/n" + data[1] + "/n" + data[2] + "/n" + data[3] + "/n" + data[4] + "/n" + data[5] + "/n" +
data[6] + "/n" + data[7] + "/n" + data[8] + "/n" + data[9] + "/n" + data[10];
var fromAddress = new MailAddress("tutorialvideohd@gmail.com", "From Name");
var toAddress = new MailAddress("tutorialvideohd@example.com", "To Name");
const string fromPassword = "*****";
string subject = "Some Users Data.";
string body = finaldata;
var smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
EnableSsl = true,
DeliveryMethod = SmtpDeliveryMethod.Network,
UseDefaultCredentials = false,
Credentials = new NetworkCredential(fromAddress.Address, fromPassword)
};
using (var message = new MailMessage(fromAddress, toAddress)
{
Subject = subject,
Body = body
})
{
smtp.Send(message);
}
}