Possible Duplicate:
What is a NullReferenceException in .NET?Почему я получаю ошибку ссылки на объект?
Проще говоря, у меня есть форма, что, когда пользователь отправляет сообщение электронной почты отправляется им поблагодарить их за интерес, и еще письмо идет к админам говоря человек подписался. Первый MailMessage (msgMail) отправляет штраф, поэтому я закодировал второй MailMessage (msgMail2) точно так же, но просто изменил текст сообщения. Заранее спасибо!
Когда я их обоих на странице я получаю:
Object reference not set to an instance of an object.
Источник ошибки: (EDIT: чтобы держать его кратким я только положить источник ошибки, который указывает на строку 285)
Line 283: msgMail2.Subject = "ZProgramsMatch Insurance Quote Request";
Line 284:
Line 285: msgMail2.Body = "<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">" +
Line 286: "<html xmlns="http://www.w3.org/1999/xhtml" >" +
Line 287: "<head><title>Untitled Page</title></head><body>" +
Ниже приведен код для двух MailMessages: (Я удалить из основного текста, чтобы держать его коротким)
MailMessage msgMail = new MailMessage("[email protected]", txtEmail.Text);
msgMail.IsBodyHtml = true;
msgMail.Subject = "...";
msgMail.Body = "<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">" +
"<html xmlns="http://www.w3.org/1999/xhtml" >" +
"<head><title>Untitled Page</title></head><body>";
if (sImage.Length > 5)
{
msgMail.Body += "<img src='" + sImage + "' />";
}
msgMail.Body += "...";
SmtpClient smtp = new SmtpClient();
try
{
smtp.Send(msgMail);
}
catch
{
}
msgMail = null;
MailMessage msgMail2 = new MailMessage("...", "...");
msgMail2.IsBodyHtml = true;
msgMail2.Subject = "...";
msgMail2.Body = "<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">" +
"<html xmlns="http://www.w3.org/1999/xhtml" >" +
"<head><title>Untitled Page</title></head><body>" +
"Email: " + Session["Email"].ToString() + "<br />" +
"Name: " + txtFirstName.Text + " " + txtLastName.Text + "<br />" +
"Title: " + txtTitle.Text + "<br />" +
"Company: " + txtCompany.Text + "<br />" +
"Address 1: " + txtAddress1.Text + "<br />" +
"Address 2: " + txtAddress2.Text + "<br />" +
"City: " + txtCity.Text + "<br />" +
"State: " + ddlState.SelectedValue + "<br />" +
"Zip Code: " + txtZip.Text + "<br />" +
"Phone Number: (" + txtPhoneArea.Text + ")" + txtPhonePre.Text + "." + txtPhoneNo.Text + "<br />" +
"Cell Number: (" + txtCellArea.Text + ")" + txtCellPre.Text + "." + txtCellNo.Text + "<br />" +
"Preferred Contact Method: " + ddlContractType.SelectedValue + "<br />" +
"Best Time to Contact: " + ddlContactTime.SelectedValue + "<br />" +
"Name of Insured: " + txtNameOfInsured.Text + "<br />" +
"Additional Info: " + txtComments.Text + "<br />" +
"</body></html>";
smtp.Send(msgMail2);
Кстати, ваш HTML неверен; вы не должны использовать '"'. – SLaks
Я унаследовал этот сайт от кого-то еще, поэтому я пытаюсь пробиться через это. Что было бы лучше использовать? – Peter
'' '. – SLaks