public MessageDetails MailParser() { NameValueCollection nvc = HttpUtility.ParseQueryString(Request.RequestUri.Query); string MailServerName = nvc["MailServer"].ToString(); int PortNo = int.Parse(nvc["PortNo"].ToString()); bool isSslEnabled = bool.Parse(nvc["SslEnabled"].ToString()); string loginName = nvc["loginName"].ToString(); string Password = nvc["Password"].ToString(); MailParse objmailparse = new MailParse(); String fullmailStr = string.Empty; List <ParseResults> objTagsDictionary = new List <ParseResults>(); DataTable dt = objmailparse.mailcontents(MailServerName, PortNo, isSslEnabled, loginName, Password); if (dt.Rows.Count > 0) { foreach (DataRow dr in dt.Rows) { MessageDetails msg = new MessageDetails(); msg.From = dr["FromEmail"].ToString(); DateTime recvDate; DateTime.TryParse(dr["EmailRecvDate"].ToString(), out recvDate); msg.ReceivedDate = recvDate; msg.ToMailIds = new List <MailIds>(); string[] toMailIds = dr["ToEmail"].ToString().Split(';'); foreach (string mailId in toMailIds) { if (mailId != "") { MailIds ToMailIds = new MailIds(); ToMailIds.MailId = mailId; msg.ToMailIds.Add(ToMailIds); } } msg.CCMailIds = new List <MailIds>(); string[] ccMailIds = dr["CC"].ToString().Split(';'); foreach (string mailId in ccMailIds) { if (mailId != "") { MailIds CCMailIds = new MailIds(); CCMailIds.MailId = mailId; msg.CCMailIds.Add(CCMailIds); } } msg.BccMailIds = new List <MailIds>(); string[] bccMailIds = dr["BCC"].ToString().Split(';'); foreach (string mailId in bccMailIds) { if (mailId != "") { MailIds bccMailId = new MailIds(); bccMailId.MailId = mailId; msg.BccMailIds.Add(bccMailId); } } msg.Subject = new SubjectDetail(); msg.Subject.recvSubject = dr["Subject"].ToString(); msg.Subject.parseData = TextParser(dr["Subject"].ToString()); msg.Body = new BodyDetail(); msg.Body.recvBody = dr["Body"].ToString(); msg.Body.parseData = TextParser(dr["Body"].ToString()); msg.Attachments = new List <Attachment>(); Attachment attach; if (dr["AttachFileName"].ToString() != "") { char[] chArr = { '|', '|' }; string[] strAttachFileName = dr["AttachFileName"].ToString().Split(chArr); foreach (string singleFileName in strAttachFileName) { if (singleFileName != "") { attach = new Attachment(); attach.fileName = singleFileName; if (Path.GetExtension(singleFileName).ToLower() == ".doc" || Path.GetExtension(singleFileName).ToLower() == ".docx") { attach.fileType = "Word"; WordParser wordObj = new WordParser(); String strWord = wordObj.WordContent(singleFileName); attach.parseData = TextParser(strWord); } else if (Path.GetExtension(singleFileName).ToLower() == ".xls" || Path.GetExtension(singleFileName).ToLower() == ".xlsx") { attach.fileType = "Excel"; ExcelParser excelObj = new ExcelParser(); DataTable dtExcel = excelObj.ExcelContent(singleFileName, true, "Sheet1"); int colCount = dtExcel.Columns.Count; foreach (DataRow drRow in dtExcel.Rows) { String strExcel = string.Empty; for (int colIteration = 0; colIteration < colCount; colIteration++) { strExcel += drRow[colIteration].ToString() + " "; } attach.parseData = TextParser(strExcel); } } msg.Attachments.Add(attach); } } } return(msg); } } return(new MessageDetails()); }