MailAttachment problem
Jeg arbejder på en formular hvor folk kan indtaste deres data og derefter sende den afsted til en email. Formularen skal indholde en attachment funktion så folk kan sende billeder eller andet med. Alt sammen virker okay når man udfylder felterne og vedhæfter en fil. Problemet opstår hvis man IKKE vedhæfter en fil, så kommer der en fejl.Koden:
private void SendMail(string from, string to_, string subject, string body)
{
MailMessage printMail = new MailMessage();
printMail.From = from;
printMail.To = to_;
printMail.Subject = subject;
printMail.Body = body;
printMail.BodyFormat = MailFormat.Html;
///Her starter attachment
string strdir = "D:\\temp\\";
string strfilename =
Path.GetFileName(txtFile.PostedFile.FileName);
txtFile.PostedFile.SaveAs(strdir + strfilename);
printMail.Attachments.Add(new MailAttachment(strdir + strfilename));
///Slutter her
try
{
SmtpMail.Send(printMail);
}
catch (Exception exc)
{
Response.Write(exc.ToString());
}
///Sletter filen fra serveren igen
File.Delete(strdir + strfilename);
}
Det som der sker er at filen bliver midlertidigt lagt op på serveren og så slettet igen. Men når man vælger ikke at vedhæfte en fil så går det i kage.
Kan man skrive en if sætning eller lignende som gør at den springer vedhæftningen over hvis den er lig med ingenting?
Alt hjælp er kærkommen da jeg ikke er specielt skarp til c#
formular feltet ser således ud:
<input type="file" id="txtFile" name="txtFile" runat="server" />