c# - Send email containing pdf based on items in table -
i have program lost source code , cannot figure out doing wrong had ip change. trying step through table , have send emails corresponding report. ideas going wrong? don't errors don't emails (and yes smtp server works).
using system; using system.collections.generic; using system.componentmodel; using system.data; using system.diagnostics; using system.linq; using system.serviceprocess; using system.text; using system.io; using system.web; using system.net.mail; using system.data.sqlclient; using system.windows.forms; namespace automatedreporting { public partial class form1 : form { public form1() { initializecomponent(); } private void button1_click(object sender, eventargs e) { dataclasses1datacontext dc = new dataclasses1datacontext(); foreach (var item in dc.reportssent1s) { string matchedcasenumber = item.casenumberkey; (new myreportrenderer()).rendertest(matchedcasenumber); } dc.executecommand("truncate table reportssent1"); } public class myreportrenderer { private rs2005.reportingservice2005 rs; private rs2005execution.reportexecutionservice rsexec; public void rendertest(string matchedcasenumber) { string historyid = null; string deviceinfo = null; string encoding = string.empty; string mimetype = string.empty; string extension = string.empty; rs2005execution.warning[] warnings = null; string[] streamids = null; rs = new rs2005.reportingservice2005(); rsexec = new rs2005execution.reportexecutionservice(); rs.credentials = system.net.credentialcache.defaultcredentials; rsexec.credentials = system.net.credentialcache.defaultcredentials; rs.url = "http://***.***.***.***/reportserver_development/reportservice2005.asmx"; rsexec.url = "http://***.***.***.***/reportserver_development/reportexecution2005.asmx"; try { // load selected report. rsexec.loadreport("/lawdept/lawdepttic", historyid); // set parameters report needed. rs2005execution.parametervalue[] parameters = new rs2005execution.parametervalue[1]; parameters[0] = new rs2005execution.parametervalue(); parameters[0].name = "casenumberkey"; parameters[0].value = matchedcasenumber; rsexec.setexecutionparameters(parameters, "en-us"); // pdf of report byte[] results = rsexec.render("pdf", deviceinfo, out extension, out encoding, out mimetype, out warnings, out streamids); //pass paramaters email dataclasses1datacontext db = new dataclasses1datacontext(); var matchedbrt = (from c in db.gettable<vw_productclientinfo>() c.casenumberkey == matchedcasenumber select c.brtnumber).singleordefault(); var matchedadd = (from c in db.gettable<vw_productclientinfo>() c.casenumberkey == matchedcasenumber select c.premises).singleordefault(); var matcheddocument = (from c in db.gettable<document>() c.docidkey == selectedrow.docidkey select c).singleordefault(); db.documents.deleteonsubmit(matcheddocument); db.submitchanges(); var matchedemail = (from c in db.gettable<vw_productclientinfo>() c.casenumberkey == matchedcasenumber select c.email).singleordefault(); //send email attachment mailmessage message = new mailmessage("reports@acmetaxabstracts.com", matchedemail, "report property located @ " + matchedadd, "attached tax information certificate above captioned property"); mailaddress copy = new mailaddress("acmetaxabstracts@gmail.com"); message.cc.add(copy); smtpclient emailclient = new smtpclient("***.***.***.***"); message.attachments.add(new attachment(new memorystream(results), string.format("{0}" + matchedbrt + ".pdf", "brt"))); emailclient.send(message); //db.reportssent1s.deleteonsubmit(matcheditem); //db.submitchanges(); } catch (exception ex) { console.writeline(ex.message); } } } } }
Comments
Post a Comment