Takže vychytal jsem další chyby....ale teď se mi nechce připojit do databáze nepochopitelně...Tohle se mi vypise po odeslani... System.InvalidOperationException: ExecuteReader vyžaduje otevřené a dostupný element Connection. Aktuální stav připojení je Zavřeno. v System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean async) v System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite) v System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) v System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) v System.Data.SqlClient.SqlCommand.ExecuteReader() v mail.Odeslani() v c:\Users\Lukas\Documents\Visual Studio 2012\WebSites\WebSite5\Admin\mail.aspx.cs:řádek 22 v mail.Button1_Click(Object sender, EventArgs e) tohle je muj kod: protected void Odeslani() { using (System.Data.SqlClient.SqlConnection c = new System.Data.SqlClient.SqlConnection("Data Source=.\\SQLEXPRESS;Initial Catalog=fotbal;Integrated Security=True")) { using (System.Data.SqlClient.SqlDataReader r = new System.Data.SqlClient.SqlCommand("SELECT Kontakt_mail FROM Hraci", c).ExecuteReader()) { List<string> prijemce = new List<string>(); while (r.Read()) { prijemce.Add(r.GetString(0)); }; var odesilatel = "[email protected]"; System.Diagnostics.Debug.WriteLine(r); // Heslo const string heslo = "heslo"; // Zobrazeni mailu string predmetmail = Predmet.Text.ToString(); string telo = "Od: " + Jmeno.Text + "\n"; telo += "Email: " + Email.Text + "\n"; telo += "Předmět: " + Predmet.Text + "\n"; telo += "Zpráva: \n" + Zprava.Text + "\n"; // smtp nastaveni gmail var smtp = new System.Net.Mail.SmtpClient(); { smtp.Host = "smtp.gmail.com"; smtp.Port = 587; smtp.EnableSsl = true; smtp.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; smtp.Credentials = new NetworkCredential(odesilatel, heslo); smtp.Timeout = 20000; } foreach (string odes in prijemce) { smtp.Send(odesilatel, odes.ToString(), predmetmail, telo); } } } } protected void Button1_Click(object sender, EventArgs e) { try { Odeslani(); DisplayMessage.Text = "Zpráva byla odeslána..."; DisplayMessage.Visible = true; Predmet.Text = ""; Email.Text = ""; Jmeno.Text = ""; Zprava.Text = ""; } catch (Exception mojeskaredachyba) { Response.Write(mojeskaredachyba); }
|