C#.NET: EMails über SMTP Server versenden

Aufgabenstellung

Ein C#.NET Programm soll eine eMail über einen SMTP Server versenden.

Ansatz

Durch Verwendung der Klasse SmtpClient lassen sich eMails folgendermaßen versenden…

Lösung

public string sendMail(string empfaenger, string betreff, string text)
{
  try
  {
     SmtpClient client = new SmtpClient("smtpserverip");
     MailAddress adr_from = new MailAddress("noreply@firma.com", "Absender");
     MailAddress adr_to = new MailAddress(empfaenger);
     MailMessage message = new MailMessage(adr_from, adr_to);
     message.Body = text;
     message.Subject = betreff;
     message.IsBodyHtml = true;
     message.Priority = MailPriority.Normal;

     client.Send(message);
     client = null;
  }
  catch (Exception ex)
  {
     return ex.Message;
  }

  return "ok";
}

C# .NET + Access : Auf .mdb-Datei zugreifen

Aufgabenstellung

Von C# soll auf eine Access-Datenbank zugegrieffen werden.

Lösung

public static string getCustomerCPD(string customerno)
{
   string cpd = "Customer using getCustomerCPD not found";
   OleDbConnection conn = new OleDbConnection(
   "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;"+
    "Jet OLEDB:Database Locking Mode=1; "+
    "Data Source=\"" + AppDomain.CurrentDomain.BaseDirectory +
     "\\OCT.mdb\";Jet OLEDB:Engine Type=5;"+
    "Provider=\"Microsoft.Jet.OLEDB.4.0\";Jet OLEDB:System database=;"+
    "Jet OLEDB:SFP=False;"+
    "persist security info=False;Extended Properties=;"+
    "Jet OLEDB:Encrypt Database=False;"+
    "Jet OLEDB:Create System Database=False;"+
     "Jet OLEDB:Don't Copy Locale on Compact=False;"+
    "Jet OLEDB:Compact Without Replica Repair=False;User ID=Admin;"+
     "Jet OLEDB:Global Bulk Transactions=1";);

     try
     {
       conn.Open();
       OleDbCommand comm = new OleDbCommand();
       comm.Connection = conn;

        comm.CommandText = "SELECT cpdnumber FROM [tbl_Customer] "+
                                           "WHERE debitor=@customerno";
        comm.Parameters.AddWithValue("customerno", customerno);

        OleDbDataReader reader = comm.ExecuteReader();

        while (reader.Read())
        {
            cpd = reader.GetValue(0).ToString();
        }
  }
  catch (Exception e)
  {
     return e.Message;
  }
  finally
  {
      conn.Close();
  }
  return cpd;
}