Ich habe ein ziemlich seltsames Problem, dass ich nicht meinen Kopf wickeln kann. So, hier ist der Code:new MailAddress() Beendet die Methode
[HttpGet]
[AllowAnonymous]
public ActionResult SendEmail()
{
SendRegisterEmail("Test", "Testagain", "lastTest");
return View("Index");
}
public async Task<bool> SendRegisterEmail(string subject, string message, string to)
{
var email = new Email();
var mailAddress = new MailAddress(to);
email.Subject = subject;
email.Body = message;
var mailAddressCollection = new MailAddressCollection();
mailAddressCollection.Add(mailAddress);
email.To = (mailAddressCollection);
return await Send(email);
}
Jetzt ist mein Problem, das ich den Code in einzelne Linien brach um zu beweisen, so kann ich, auf dem sehen Linie es bricht. Hier ist, was ich gefunden habe:
Wenn ich debuggen dies und ich trete in die SendRegisterEmail
Methode, dass die Linie, sagt var mailAddress = new MailAddress(to);
fuehrt wird und dann verlässt er die Funktion aus und führt die Linie return View("Index");
und die Seite geladen werden. Das Seltsame ist, dass ich am Ende eine Protokollierungsmethode zu Send hinzugefügt habe, und dass das Logging nie getroffen wird. Ich habe einen Breakpoint auf Send gesetzt und es wurde nie getroffen. Es ist so, als ob die Erstellung von E-Mails abgestürzt wäre, beschlossen, die Anruferfunktion zu verlassen und mit dem Code fortzufahren.
Ich habe keine Ahnung, warum.
Der Wert, den Sie "to" zuweisen, ist keine gültige E-Mail-Adresse. Dies kann dazu führen, dass die Funktion beendet wird und asynchron die Anweisung view –