public int RecordEmail(Email mail) { try { if (mail.ID > 0) { //update the mail. var obj = dbContext.ABi_Email.FirstOrDefault(o => o.ABi_Email_ID == mail.ID); if (obj != null) { obj.ABi_Invoice_ID = mail.InvoiceID; obj.DateModified = DateTime.Now; obj.EmailContent = mail.Content; obj.EmailList = mail.ToEmailList(); obj.EmailSubject = mail.Subject; obj.IsSend = mail.IsSend; } dbContext.SaveChanges(); } else { //Insert a new mail. dbContext.AddToABi_Email(new VPDAL.ABi_Email() { ABi_Invoice_ID = mail.InvoiceID, DateCreated = DateTime.Now, DateModified = DateTime.Now, EmailContent = mail.Content, EmailSubject = mail.Subject, EmailList = mail.ToEmailList(), IsSend = false }); dbContext.SaveChanges(); } return 0; } catch (Exception ex) { logger.LogError(String.Format("RecordEmail(InvoiceID:{0}, Subject:{1}, Content:{2})", mail.InvoiceID, mail.Subject, mail.Content), ex); } return -1; }
public void RecordEmailTest() { BaseEmail target = new BaseEmail(); // TODO: Initialize to an appropriate value VPDAL.ABInvVPEntities dbContext = new VPDAL.ABInvVPEntities(); Email mail = new Email() { InvoiceID = 27115, Content = "Test Email: Insert an Email", DateCreated = DateTime.Now, DateModified = DateTime.Now, IsSend = false, Subject = "Test Email", ToEmailAddresses = new System.Collections.Generic.List<string>(new String[] {"*****@*****.**", "*****@*****.**"}) }; int nRet = target.RecordEmail(mail); Assert.AreEqual(nRet, 0); }