Solved

asp Email attachment

Posted on 2010-08-30
11
269 Views
Last Modified: 2012-05-10
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

0
Comment
Question by:JCWEBHOST
11 Comments
 
LVL 42

Expert Comment

by:sedgwick
ID: 33557393
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
 

Author Comment

by:JCWEBHOST
ID: 33557479
the email comes throu bt the attachment not displaying if its a pic
0
 

Author Comment

by:JCWEBHOST
ID: 33557510
if it take out this it works fine, but nothing is been entered into the data base
0
Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

 

Author Comment

by:JCWEBHOST
ID: 33557515
 //HttpPostedFile File = FileUpload1.PostedFile;
            //imgByte = new Byte[File.ContentLength];
            //File.InputStream.Read(imgByte, 0, File.ContentLength);
0
 
LVL 42

Expert Comment

by:sedgwick
ID: 33557516
and if you comment the C.Insert() line the attachment comes in just fine???
0
 

Author Comment

by:JCWEBHOST
ID: 33557535
Yes
0
 
LVL 42

Expert Comment

by:sedgwick
ID: 33557558
what's the implementation of C.Insert() ??
0
 

Author Comment

by:JCWEBHOST
ID: 33557605
inserting into the database
0
 
LVL 4

Expert Comment

by:kjetilroe
ID: 33557757

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
 
LVL 42

Expert Comment

by:sedgwick
ID: 33557820
can u assure that the C.Insert always return result equal to ""?
which means the SendEmail always called?
0
 
LVL 9

Accepted Solution

by:
puru1981 earned 500 total points
ID: 33558271
please dispose the file object. it might help you.
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This demonstration started out as a follow up to some recently posted questions on the subject of logging in: http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Q_28634665.html and http://www.experts-exchange.com/Programming/…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
Along with being a a promotional video for my three-day Annielytics Dashboard Seminor, this Micro Tutorial is an intro to Google Analytics API data.
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question