Smtpclient - osztály ()
Létrehozása és küldése e-mail üzeneteket a SmtpClient kell adnia a következő információkat:
Szerver-host SMTP, használják, hogy küldjön e-mailt. Lásd. Host és Port tulajdonságait.
Bizonyítványok hitelesítéshez, ha ezt az SMTP szerver. Lásd. Leírása bizonyítványok tulajdon.
Az üzenet tartalmát. Lásd. Küldje módszerek leírását, és a SendAsync. kapó alkotó testület. Lásd még. Az ingatlan leírása MailMessage. Body.
Annak érdekében, hogy mellékleteként egy e-mail üzenetet, először létre kell hoznia egy kapcsolt Attachment osztályban. majd adja hozzá az üzenet segítségével tulajdonságait MailMessage. Mellékleteket. Attól függően, hogy a címzett e-mail kliens és a fájl típusát a mellékletet, talán néhány címzettet nem tudja olvasni a mellékletet. Az ügyfelek számára, akik nem jelennek meg egy mellékletet az eredeti formájában, megadhat egy alternatív nézet segítségével a tulajdonságait MailMessage. AlternateViews.
Az értékek segítségével megadhatja a konfigurációs fájlokat az alkalmazás vagy a számítógép host, port és hitelesítő által használt alapértelmezett minden tárgy SmtpClient. További információért lásd. Szakasz Element
Ahhoz, hogy küldjön egy e-mail üzenetet, és blokkolja a munka során az üzenet átviteli késleltetés egy SMTP szerver, akkor használja a szinkron módszer küldése. Ahhoz, hogy a fő téma, hogy továbbra is a program futása során az e-mail átadása, használja az aszinkron módszerek SendAsync. SendCompleted esemény bekövetkezik végén SendAsync működését. Mert ez az esemény, akkor fel kell vennie SendCompletedEventHandler küldött SendCompleted. Küldött SendCompletedEventHandler hivatkoznia kell a visszahívási eljárás, amely feldolgozza eseményértesítéseket SendCompleted. Hogy megszünteti az aszinkron e-mail módszert használja SendAsyncCancel.
Ha hívja újra SendAsync küldése vagy amikor végre küldött e-mail, nem lesz kivétel InvalidOperationException.
Az SMTP szerver beállítása az aktuális példányt SmtpClient osztályban. Ez lehet újra, ha a kérelem kell küldenie több üzenetet ugyanazon SMTP szerver. Ez különösen hasznos, ha hitelesítési és titkosítási létrehozza a kapcsolatot az SMTP-szerver. A folyamat a hitelesítés és a telepítés TLS ülés lehet egy drága művelet. Az a követelmény, hogy helyreállítsák a kapcsolatot minden elküldött üzenet nagy mennyiségű e-mailt az SMTP szerver is jelentősen befolyásolja a teljesítményt. Sok erőteljes e-mail alkalmazás, amely e-mailt küld állapotáról, hírlevelek vagy riasztások. Továbbá, számos alkalmazás - e-mail kliensek támogatják az offline mód, ahol a felhasználók generálnak e-mail üzeneteket később, miután a kapcsolat az SMTP szerver. A tipikus viselkedése e-mail kliens, hogy küldjön minden SMTP üzenet-specifikus SMTP szerver (az internetszolgáltató által megadott) a későbbi továbbítását az e-mail más SMTP szervereket.
Osztály megvalósítása SmtpClient hordozza összevonásával SMTP kapcsolatok, hogy elkerüljék a költségek újbóli kapcsolat telepítése minden üzenetet irányítani ugyanazon a szerveren. Az alkalmazás használhatja ugyanazt SmtpClient objektumot küldeni a különböző e-mail üzenetek egy SMTP szerver és sok különböző SMTP szervereket. Ennek következtében nincs mód annak megállapítására, ha az alkalmazás nem használja SmtpClient tárgy és meg kell tisztítani.
Ha az SMTP kapcsolat megszakad, és az ügyfél köteles elvégezni a kapcsolatot, meg kell küldenie a QUIT üzenetet a kiszolgálónak, jelezve, hogy nincs több üzenetet küldeni. Ez lehetővé teszi, hogy a szerver kiadja társított erőforrásokat a kapcsolatot a kliens, és a folyamat üzeneteket küldött az ügyfélnek.
A SmtpClient osztályban nincs módszer Lezárás. így az alkalmazás kell hívni a túlterhelt megsemmisíteni módszer kifejezetten engedje források. Dobja eljárás végigmegy az összes létre kapcsolatot az SMTP szerver a tulajdonságban megadott Host. és kilépés üzenetet küld, amely követi a dokumentált befejezése TCP-kapcsolatot. A megsemmisíteni módszer is felszabadítja a menedzselt által használt erőforrások Socket. és (opcionális) szabadítja fel a kezelt források.
Dobja módszer az úgynevezett végén munka SmtpClient osztályban. A megsemmisíteni módszer hagy SmtpClient tárgy használhatatlanná állapotban. Felhívása után megsemmisíteni, távolítsunk el minden SmtpClient. így a szemétgyűjtő helyre tudja állítani a memória által elfoglalt SmtpClient.