asp Email attachment

why is it when i insert into the database 1st than email an "attachment" , it does not open in my email ?


but if i just email an attachment using c# code it works fine?

here's my code
protected void btnplaceOrder_Click(object sender, EventArgs e)
    {
        //FileUpload img = (FileUpload)FileUpload1;
        byte[] imgByte = null;

        if (FileUpload1.HasFile == true)
        {
            HttpPostedFile File = FileUpload1.PostedFile;
            imgByte = new Byte[File.ContentLength];
            File.InputStream.Read(imgByte, 0, File.ContentLength);
        }

        string s = C.Insert(lblrefno.Text, txtFname.Text, txtLname.Text, txtContactNo.Text, txtCollage.Text, txtRoomNo.Text, txtStreet.Text, txtCity.Text, txtState.Text, txtZipcode.Text, txtCountry.Text, txtCollage.Text, imgByte, txtAdditionNotes.Text, lblNoBP.Text, lblNoC.Text, lblNoC.Text, lblTT.Text, lblNOLB.Text, lblNOLBCC.Text, lblNN.Text, lblNNCC.Text, lblEC.Text, lblDC.Text, lblTTC.Text);

        if (s == "")
        {
            string body = returnEmail();
            SendMail(body, "ritesh@jcweb.co.za", "Order Confirmation Details", "yes");
            SendMail(body, "ritesh@jcweb.co.za", "Order Confirmation Details", "no");
        }
}




    public void SendMail(string body, string to, string Subject, string attachment)
    {

        System.Net.Mail.MailMessage MailMass = new System.Net.Mail.MailMessage();

        MailMass.From = new System.Net.Mail.MailAddress("info@theses.jcwebhostza.com");
        MailMass.To.Add(new System.Net.Mail.MailAddress(to));
        MailMass.Subject = Subject;
        MailMass.Body = body;
        MailMass.IsBodyHtml = true;

        if (attachment == "yes")
        {
            string fileName = Path.GetFileName(FileUpload1.PostedFile.FileName);
            Attachment myAttachment =new Attachment(FileUpload1.FileContent, fileName);
            MailMass.Attachments.Add(myAttachment);

        }

        MailMass.ReplyTo = new System.Net.Mail.MailAddress("info@theses.jcwebhostza.com");
        MailMass.Priority = System.Net.Mail.MailPriority.High;
        System.Net.Mail.SmtpClient smtpC = new System.Net.Mail.SmtpClient();
        System.Net.NetworkCredential basicAuthenticationInfo = new System.Net.NetworkCredential("info@theses.jcwebhostza.com", "inf01the");

        smtpC.Host = "mail.theses.jcwebhostza.com";
        smtpC.Port = 25;
        smtpC.UseDefaultCredentials = false;
        smtpC.Credentials = basicAuthenticationInfo;

        smtpC.Send(MailMass);
    }

Open in new window

JCWEBHOSTAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
puru1981Connect With a Mentor Commented:
please dispose the file object. it might help you.
0
 
Meir RivkinFull stack Software EngineerCommented:
it seems that C.Insert() returns something other than "".cause in the next line you check if (s == "")i'd suggest first of all debug the code and check what C.Insert() returns, and also dig in into the implementation of Insert() to see what it returns and why.it's hard to tell cause you didn't post the implementation of C.Insert() function.but debugging will sure reveal you the reason for that.
0
 
JCWEBHOSTAuthor Commented:
the email comes throu bt the attachment not displaying if its a pic
0
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
JCWEBHOSTAuthor Commented:
if it take out this it works fine, but nothing is been entered into the data base
0
 
JCWEBHOSTAuthor Commented:
 //HttpPostedFile File = FileUpload1.PostedFile;
            //imgByte = new Byte[File.ContentLength];
            //File.InputStream.Read(imgByte, 0, File.ContentLength);
0
 
Meir RivkinFull stack Software EngineerCommented:
and if you comment the C.Insert() line the attachment comes in just fine???
0
 
JCWEBHOSTAuthor Commented:
Yes
0
 
Meir RivkinFull stack Software EngineerCommented:
what's the implementation of C.Insert() ??
0
 
JCWEBHOSTAuthor Commented:
inserting into the database
0
 
kjetilroeCommented:

It would be helpful if you also included the code for the C.Insert() procedure. Is the code for the C.Insert() procedure returning an empty string, or does it actually returns something else. If C.Insert() returns anything other than an empty string, you will not send any emails based on the code you wrote here.
0
 
Meir RivkinFull stack Software EngineerCommented:
can u assure that the C.Insert always return result equal to ""?
which means the SendEmail always called?
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.