public IActionResult Index() { try { var value = HttpContext.Session.GetString("user"); User user = JsonConvert.DeserializeObject <User>(value); if (user.role_id == 3) { // Models.CustomerContext context = HttpContext.RequestServices.GetService(typeof(BugReportMVC5.Models.CustomerContext)) as Models.CustomerContext; TempData["User"] = user; EmailContext context = HttpContext.RequestServices.GetService(typeof(EmailContext)) as EmailContext; // List<Email> EmailList = context.GetAllEmails(); //ViewBag.ListofEmails = EmailList; return(View(context.GetAllEmails())); } else { ModelState.AddModelError("Error", "Unauthorized!!"); return(RedirectToAction("Index", "Home")); } } catch { ModelState.AddModelError("Error", "Login First!!"); return(RedirectToAction("Index", "Home")); } }
//Process Mail as mention in defined problem. public static void ProcessMail() { IServiceProvider servicesProvider = BuildDi(); using (servicesProvider as IDisposable) { var emailClient = servicesProvider.GetService <IEmailClient> (); using (var emailContext = new EmailContext()) { //step 1: sending "Thank you" to all opened email. var newMails = emailContext.Email.Where(e => e.Status == EmailStatus.Opened); var welcomeBody = GetWelcomeMessage(); newMails.ToList().ForEach(i => { emailClient.Send(i.From, i.To, "Welcome", welcomeBody.Replace("{EmailID}", i.EmailId.ToString())); }); //step 2: sending "Thank you" to all opened email. var openedMails = emailContext.Email.Where(e => e.Status == EmailStatus.Opened); openedMails.ToList().ForEach(i => { emailClient.Send(i.From, i.To, "Thank you", "body"); }); //step 3: sending Reminder to all var sentMails = emailContext.Email.Where(e => e.Status == EmailStatus.Sent && e.CreatedAt >= DateTime.UtcNow.AddDays(-3)); sentMails.ToList().ForEach(i => { emailClient.Send(i.From, i.To, "Gentel Reminder", "body"); }); } } }
public static void EnsurePopulated(IApplicationBuilder app) { EmailContext context = app.ApplicationServices .CreateScope().ServiceProvider.GetRequiredService <EmailContext>(); if (context.Database.GetPendingMigrations().Any()) { context.Database.Migrate(); } if (!context.Emails.Any()) { context.Emails.AddRange( new Email { E_mailDirtetion = "*****@*****.**", Pasword = "ljagn", Id_user = 1, Id_permissions = 100 }, new Email { E_mailDirtetion = "*****@*****.**", Pasword = "ojr ngea", Id_user = 2, Id_permissions = 110 }, new Email { E_mailDirtetion = "*****@*****.**", Pasword = "lsotkrhnow", Id_user = 3, Id_permissions = 111 }, new Email { E_mailDirtetion = "*****@*****.**", Pasword = "lsotk6u0rhnow", Id_user = 4, Id_permissions = 001 }, new Email { E_mailDirtetion = "*****@*****.**", Pasword = "wjsrtyu.ry", Id_user = 5, Id_permissions = 101 } ); context.SaveChanges(); } }
public static async Task <List <string> > RunOrchestrator( [OrchestrationTrigger] DurableOrchestrationContext context) { var runContext = context.GetInput <ReportContext>(); runContext.Date = DateTime.Now; var outputs = new List <string>(); // First task loads html from template in blob storage and updates the content inside var updatedHtml = await context.CallActivityAsync <string>("ReplaceHtmlContent", new object[] { runContext.Template, runContext.JSON }); // convert html into pdf, upload to blob storage and get download link var pdf = await context.CallActivityAsync <string>("ProducePdf", new string[] { updatedHtml, runContext.ReportName }); outputs.Add(pdf); var email = new EmailContext { BCC = runContext.Recipients, Subject = $"Report generated {runContext.ReportName} @ {DateTime.Now}", body = $"Report Access Link: <hr/> <a href=\"{pdf}\">{pdf}</a>" }; // run the next two tasks at the same time var tasks = new List <Task> { context.CallActivityAsync("EmailReportNotification", email), context.CallActivityAsync("AuditReport", runContext) }; await Task.WhenAll(tasks); return(outputs); }
public static string GetUsersByParentId(string groupId, string subGroupId) { string result = string.Empty; using (var context = new EmailContext()) { var entities = context.EmailUsers.Select(u => new { u.ID, u.GroupID, u.SubGroupID, u.UserName, u.Email, u.Phone }).ToList(); if (groupId != "-1") { entities = entities.Where(a => a.GroupID == int.Parse(groupId)).ToList(); } if (subGroupId != "0") { entities = entities.Where(a => a.SubGroupID == int.Parse(subGroupId)).ToList(); } result = JsonConvert.SerializeObject(entities, Formatting.Indented); } return(result); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env, IServiceProvider serviceProvider) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseMvc(); var scheduler = serviceProvider.GetService <IScheduler>(); QuartzServicesUtilities.StartJob <ReadEmailsJob>(scheduler, new TimeSpan(0, 1, 0)); using (var client = new EmailContext()) { client.Database.EnsureCreated(); } //var _settingsService = serviceProvider.GetService<ISettingsService>(); //var _mailService = serviceProvider.GetService<IMailService>(); //var emailAccounts = _settingsService.GetEmailAccounts().Result; //foreach (var emailAccount in emailAccounts) //{ // _mailService.GetMessages(emailAccount); //} }
public EmailContext ComposeEmailContextForInterviewFeedbackReminder(int interviewId) { var emailContext = new EmailContext(); var selectedInterview = _interviewRoundRepository.Get(interviewId, "JobOpening,Candidate.Person,Round,Interviewer.Person"); if (selectedInterview != null) { emailContext.PlaceHolders = new List <PlaceHolder> { new PlaceHolder("[Id]", selectedInterview.Id.ToString()), new PlaceHolder("[JobOpening]", selectedInterview.JobOpening.Title), new PlaceHolder("[Candidate]", selectedInterview.Candidate.Person.Name), new PlaceHolder("[Round]", selectedInterview.Round.Title), new PlaceHolder("[Interviewer]", selectedInterview.Interviewer.Person.Name), new PlaceHolder("[ScheduledOn]", selectedInterview.ScheduledOn.ToString()), }; emailContext.Subject = "Interview Feedback Reminder"; emailContext.ToAddress.Add(new MailAddress(selectedInterview.Interviewer.OfficialEmail, selectedInterview.Interviewer.Person.Name)); var settings = _settingsService.GetSiteSettings(); if (settings.POCSettings != null) { var selectedPOC = _userRepository.Get(settings.POCSettings.HRDepartmentLevel1, "Person"); if (selectedPOC != null) { var pocAddress = new MailAddress(selectedPOC.OfficialEmail, selectedPOC.Person.Name); emailContext.CcAddress.Add(pocAddress); } } } return(emailContext); }
static void Main(string[] args) { using (var db = new EmailContext()) { // Create a new app this will also log the user in. var authApp = new AuthApp(); // Create a new email handler for retrieving emails using MS Graph. var graphEmailClient = new GraphEmailHandler(authApp); // Database handler. var dbHandler = new EmailDbStorage(authApp.UserAccount.Username, db); // Handler for syncing emails with the database. var emailHandler = new EmailHandler.EmailHandler(graphEmailClient, dbHandler); Console.WriteLine("Syncing email database..."); // Complete the initial sync with the database. emailHandler.InitialEmailsSyncAsync(); while (!Console.KeyAvailable) { Console.WriteLine("Updating email db..."); // Sync the emails until a key is pressed. emailHandler.SyncEmailsAsync(); // Sleep so that the db is not updated more than every 30s. // TODO: make this async. Thread.Sleep(30000); } } }
public async Task Get_GetsExistingEmail() { // arrange using var contextFactory = new TestEmailContextFactory(); using EmailContext context = contextFactory.CreateContext(); // insert test data here, or maybe have a helper method somewhere to possibly share it between tests var insertedEmail = new Message { Guid = Guid.NewGuid(), OrigDate = new DateTimeOffset(2021, 1, 1, 0, 0, 0, new TimeSpan(0)), From = new Account { Address = "*****@*****.**" }, Subject = "example subject", Body = "asdf" }; context.Messages.Add(insertedEmail); context.SaveChanges(); var repo = new MessageRepository(context); // act Business.Email email = await repo.GetByIdAsync(insertedEmail.Guid); // assert Assert.Equal(insertedEmail.Guid, email.Id); Assert.Equal(insertedEmail.Body, email.Body); Assert.Equal(insertedEmail.OrigDate, email.OrigDate); Assert.Equal(insertedEmail.From.Address, email.From); Assert.Equal(insertedEmail.Subject, email.Subject); }
private void Initialise() { ctx = new EmailContext(); var user = this.Application.ActiveExplorer().Session.CurrentUser.Name; jobs = ctx.Jobs; }
public EmailContext ComposeEmailContextForTaskMissed(int taskId) { var emailContext = new EmailContext(); var selectedTask = _taskRepository.Get(taskId, "Project,Assignee.User.Person,CreatedByUser.Person"); if (selectedTask != null) { emailContext.PlaceHolders = new List <PlaceHolder> { new PlaceHolder("[Id]", selectedTask.Id.ToString()), new PlaceHolder("[Title]", selectedTask.Title), new PlaceHolder("[Description]", selectedTask.Description), new PlaceHolder("[Project]", selectedTask.Project.Title), new PlaceHolder("[Status]", Enum.GetName(typeof(ProjectTaskStatus), selectedTask.TaskStatus)), new PlaceHolder("[AssignedTo]", selectedTask.Assignee.User.Person.Name), new PlaceHolder("[CreatedBy]", selectedTask.CreatedByUser.Person.Name) }; emailContext.Subject = "Task Missed"; emailContext.ToAddress.Add(new MailAddress(selectedTask.Assignee.OfficialEmail, selectedTask.Assignee.User.Person.Name)); emailContext.CcAddress.Add(new MailAddress(selectedTask.CreatedByUser.OfficialEmail, selectedTask.CreatedByUser.Person.Name)); } return(emailContext); }
public async Task <IActionResult> GetVerifierCode(ForgetPasswordGetVerifierCodePostData postData) { try { string type = VerifierType.ForgetPassword.ToString(); string verifierCode = await this.verifierService.GetVerifierCode(type, postData.Email); if (string.IsNullOrEmpty(verifierCode)) { this.logger.LogError($"Get Verifier Code Fail For Get Verifier Code >>> Email:{postData.Email}"); return(BadRequest("取得查詢密碼驗證碼失敗.")); } EmailContext emailContext = EmailContext.GetVerifierCodetEmailContextForForgetPassword(postData.Email, verifierCode); ResponseResultDto responseResult = await this.verifierService.SendVerifierCode(type, postData.Email, verifierCode, emailContext); if (responseResult.Ok) { return(Ok(responseResult.Data)); } return(BadRequest(responseResult.Data)); } catch (Exception ex) { this.logger.LogError($"Get Verifier Code Error >>> Email:{postData.Email}\n{ex}"); return(BadRequest("請求產生驗證碼發生錯誤.")); } }
public async Task <List <EmailVO> > FindEmailsByPersonId(EmailContext ctx, int personId) { List <EmailVO> model = new List <EmailVO>(); try { var query = await(from email in ctx.Emails where email.PersonId == personId select new { email.Id, email.Domain }).ToListAsync(); foreach (var email in query) { EmailVO em = new EmailVO() { Id = FillItemForDatabase.FillItem(email.Id), Domain = FillItemForDatabase.FillItem(email.Domain) }; model.Add(em); } } catch { throw; } return(model); }
public async Task SendAsync(EmailContext context) { var senderInfo = GetSenderInfo(); var mail = new MailMessage(); mail.To.Add(new MailAddress(context.To)); mail.From = new MailAddress(senderInfo.From); mail.Subject = context.Subject; mail.Body = context.Content; mail.IsBodyHtml = true; using (var smtp = new SmtpClient()) { var credential = new NetworkCredential { UserName = senderInfo.UserName, Password = senderInfo.Password }; smtp.Credentials = credential; smtp.Host = senderInfo.Host; smtp.Port = senderInfo.Port; smtp.EnableSsl = senderInfo.IsSSlEnabled; await smtp.SendMailAsync(mail); } }
public EmailSpoolerDependencies(ISimpleLogger logger) { Logger = logger; DbContext = new EmailContext(); EmailConfig = EmailConfiguration.CreateFromAppConfig(); EmailSpoolerConfig = new EmailSpoolerConfig(logger); EmailGenerator = () => new Email(EmailConfig); }
public void CreateEmailsReturnsEmptyEnumerableOfEmailsWhenThereAreNoUsersInEmailContext() { var emailContext = new EmailContext(); var emails = _commonEmailFactory.CreateEmails(TestEmailTemplateContent, emailContext); Assert.NotNull(emails); }
public PasswordResetController(EmailContext context, IMapper mapper, UserManager <User> userManager, SignInManager <User> signInManager, IEmailSender emailSender) { _context = context; _mapper = mapper; _userManager = userManager; _signInManager = signInManager; _emailSender = emailSender; EmailSeeder.PopulateTestData(_context); }
public async Task <EmailContext> GetEmailContextAsync() { var users = await _userRepository.GetAllAsync(); var context = new EmailContext(); context.Users.AddRange(users); return(context); }
public bool SendEmailService(EmailContext email) { _mail = new MailMessage(from: email.EmailOrigin, to: email.EmailAddress , body: email.Body, subject: email.Message); _smtpService = new SmtpService(); _credential = new NetworkCredential(email.EmailOrigin, EmailKey.GetEmailKey()); return(_smtpService.SendEmail(_mail, _credential)); }
protected void btnSaveUser_Click(object sender, EventArgs e) { string userName = this.txtUserName.Text.Trim(); string groupId = this.ddlGroupID.SelectedValue; string subGroupId = this.ddlSubGroupID.SelectedValue; string email = this.txtEmail.Text.Trim(); string phone = this.txtPhone.Text.Trim(); string summary = this.txtSummary.Text.Trim(); using (var context = new EmailContext()) { if (this.hideUserAction.Value == "add") { var entity = new EmailUser { UserName = userName, GroupID = int.Parse(groupId), SubGroupID = int.Parse(subGroupId), Email = email, Phone = phone, Summary = summary, AddDate = DateTime.Now }; context.EmailUsers.Add(entity); context.SaveChanges(); this.txtUserName.Text = string.Empty; this.txtEmail.Text = string.Empty; this.txtPhone.Text = string.Empty; this.txtSummary.Text = string.Empty; } if (this.hideUserAction.Value == "edit") { var id = this.hideUserID.Value; var entity = context.EmailUsers.Find(int.Parse(id)); if (entity != null) { entity.UserName = userName; entity.GroupID = int.Parse(groupId); entity.SubGroupID = int.Parse(subGroupId); entity.Email = email; entity.Phone = phone; entity.Summary = summary; entity.AddDate = DateTime.Now; context.SaveChanges(); this.txtUserName.Text = string.Empty; this.txtEmail.Text = string.Empty; this.txtPhone.Text = string.Empty; this.txtSummary.Text = string.Empty; this.hideUserAction.Value = "add"; this.hideUserID.Value = "0"; } } InitRepeater5(this.AspNetPager5.CurrentPageIndex, int.Parse(this.ddlGroupID.SelectedValue), int.Parse(this.ddlSubGroupID.SelectedValue)); } }
private void InitRepeater4(int currentPageIndex = 1, int parentId = 0) { using (var context = new EmailContext()) { var entities = context.EmailGroups.OrderByDescending(g => g.ID).Where(g => g.ParentID == parentId).Select(g => g); this.AspNetPager4.RecordCount = entities.Count(); this.AspNetPager4.CurrentPageIndex = currentPageIndex; this.Repeater4.DataSource = entities.Skip((currentPageIndex - 1) * this.AspNetPager4.PageSize).Take(this.AspNetPager4.PageSize).ToList(); this.Repeater4.DataBind(); } }
public IQueryable DropDownList1_GetData() { var context = new EmailContext(); var items = context.EmailGroups.Where(g => g.ParentID == 0).Select(g => new { text = g.GroupName, value = g.ID.ToString() }); return(items); }
public async Task <bool> TryDequeueAsync() { emailContext = await _emailQueue.ReceiveFromFileAsync(); if (emailContext == null) { return(false); } Task.Start(); return(true); }
protected void btnSendEmail_Click(object sender, EventArgs e) { string receiver = this.txtReceiver.Text.Trim(); string subject = this.txtSubject.Text.Trim(); MailMessage mailMessage = new MailMessage(); string content = this.hideMailContent.Value; mailMessage.From = "*****@*****.**"; mailMessage.Subject = subject; mailMessage.IsBodyHtml = true; mailMessage.HtmlBody = content; string[] users = receiver.Split(','); foreach (string user in users) { int startIndex = user.IndexOf('<') + 1; int length = user.Length; string email = user.Substring(startIndex, length - startIndex - 1); mailMessage.To.Add(email); } //创建附件 if (Session["tempTable"] != null) { DataTable table = (DataTable)Session["tempTable"]; foreach (DataRow row in table.Rows) { mailMessage.Attachments.Add(new Attachment(row["FilePath"].ToString())); } } SmtpClient client = AsposeUtilities.GetSmtpClient(this.Request.ApplicationPath); try { client.Send(mailMessage); using (var context = new EmailContext()) { var entity = new SendLog { Sender = CookieUtilities.GetCookieValue("username"), Receiver = receiver, SendTime = DateTime.Now, SendType = "Email" }; context.SendLogs.Add(entity); context.SaveChanges(); } ScriptManager.RegisterStartupScript(this.UpdatePanel1, GetType(), "a", "alert('邮件发送成功')", true); } catch (Exception ex) { ScriptManager.RegisterStartupScript(this.UpdatePanel1, GetType(), "a", "alert('邮件发送失败!" + ex.Message + "')", true); } }
private async Task SaveToFile(EmailContext emailMessage) { string fileName = $"{Guid.NewGuid()}.json"; byte[] data = JsonSerializer.SerializeToUtf8Bytes(emailMessage); await File.WriteAllBytesAsync(Path.Combine(Folder, fileName), data); lock (_stack) { _stack.Push(fileName); } }
public EmailContext ComposeEmailContextForTicketUpdated(int ticketId) { var emailContext = new EmailContext(); var selectedTicket = _ticketRepository.Get(ticketId, "TicketCategory,TicketSubCategory,CreatedByUser.Person,AssignedToUser.Person"); if (selectedTicket != null) { emailContext.PlaceHolders = new List <PlaceHolder> { new PlaceHolder("[Category]", selectedTicket.TicketCategory.Title), new PlaceHolder("[SubCategory]", selectedTicket.TicketSubCategory.Title), new PlaceHolder("[Title]", selectedTicket.Title), new PlaceHolder("[Description]", selectedTicket.Description), new PlaceHolder("[CreatedBy]", selectedTicket.CreatedByUser.Person.Name), new PlaceHolder("[Id]", selectedTicket.Id.ToString()), new PlaceHolder("[AssignedTo]", selectedTicket.AssignedToUser.Person.Name), new PlaceHolder("[Status]", selectedTicket.Status.ToString()) }; emailContext.Subject = "Ticket Status Updated"; emailContext.ToAddress.Add(new MailAddress(selectedTicket.CreatedByUser.OfficialEmail, selectedTicket.CreatedByUser.Person.Name)); var settings = _settingsService.GetSiteSettings(); if (settings.POCSettings != null) { int?pointOfContact = null; switch (selectedTicket.TicketCategory.Title) { case "IT": pointOfContact = settings.POCSettings.ITDepartmentLevel1; break; case "HR": pointOfContact = settings.POCSettings.HRDepartmentLevel1; break; } if (pointOfContact.HasValue) { var selectedPOC = _userRepository.Get(pointOfContact.Value, "Person"); if (selectedPOC != null) { var pocAddress = new MailAddress(selectedPOC.OfficialEmail, selectedPOC.Person.Name); emailContext.CcAddress.Add(pocAddress); } } } } return(emailContext); }
private void SendEmail(string templateName, EmailContext context) { if (context != null) { // short Circuit, If there is DropEmail set, we dont have to send this email. if (context.DropEmail) { return; } var emailService = CreateEmailService(); var emailTemplate = GetEmailTemplate(templateName); var emailBody = SimpleTemplateProcessor.Process(emailTemplate, context.PlaceHolders); var fromAddress = GetFromAddress(); var mailMessage = new MailMessage { From = fromAddress }; // Add To address foreach (var toAddress in context.ToAddress) { mailMessage.To.Add(toAddress); } // Add cc address foreach (var ccAddress in context.CcAddress) { mailMessage.CC.Add(ccAddress); } // Set Subject mailMessage.Subject = context.Subject; // Set Body mailMessage.Body = emailBody; mailMessage.IsBodyHtml = true; if (context.EmailAttachments.Any()) { foreach (var emailAttachment in context.EmailAttachments) { Stream stream = new MemoryStream(emailAttachment.Content); mailMessage.Attachments.Add(new Attachment(stream, emailAttachment.FileName, emailAttachment.FileType)); } } emailService.SendEmail(mailMessage); } }
public static string GetGroupByParentId(string parentId) { using (var context = new EmailContext()) { int id = int.Parse(parentId); var items = context.EmailGroups.Where(g => g.ParentID == id).Select(g => new { text = g.GroupName, value = g.ID.ToString() }).ToList(); return(JsonConvert.SerializeObject(items, Formatting.Indented)); } }
protected void btnSaveGroup_Click(object sender, EventArgs e) { string groupName = this.txtGroupName.Text.Trim(); string parentId = this.ddlParentGroupID.SelectedValue; string groupDescription = this.txtGroupDescription.Text.Trim(); using (var context = new EmailContext()) { if (this.hideGroupAction.Value == "add") { var entity = context.EmailGroups.FirstOrDefault(g => g.GroupName == groupName); if (entity == null) { entity = new EmailGroup { GroupName = groupName, ParentID = int.Parse(parentId), GroupDescription = groupDescription }; context.EmailGroups.Add(entity); context.SaveChanges(); this.txtGroupName.Text = string.Empty; this.txtGroupDescription.Text = string.Empty; } else { ScriptManager.RegisterStartupScript(this.GroupUpdatePanel, GetType(), "a", "alert('此分组名称已经存在')", true); return; } } if (this.hideGroupAction.Value == "edit") { var id = this.hideGroupID.Value; var entity = context.EmailGroups.Find(int.Parse(id)); if (entity != null) { entity.GroupName = groupName; entity.ParentID = int.Parse(parentId); entity.GroupDescription = groupDescription; } context.SaveChanges(); this.txtGroupName.Text = string.Empty; this.ddlParentGroupID.SelectedIndex = -1; this.txtGroupDescription.Text = string.Empty; this.hideGroupID.Value = "0"; this.hideGroupAction.Value = "add"; } } InitRepeater4(this.AspNetPager4.CurrentPageIndex); ddlParentGroupID_GetData(); }
public EmailContext ComposeEmailContextForAssetStateChanged(int assetId) { var emailContext = new EmailContext(); var selectedAsset = _assetRepository.Get(assetId, "AssetCategory,AllocatedEmployee.User.Person"); var settings = _settingsService.GetSiteSettings(); if (selectedAsset != null) { emailContext.PlaceHolders = new List <PlaceHolder> { new PlaceHolder("[AssetTitle]", selectedAsset.Title), new PlaceHolder("[AssetSerial]", selectedAsset.SerialNumber), new PlaceHolder("[AssetTag]", selectedAsset.TagNumber), new PlaceHolder("[AssetCategory]", selectedAsset.AssetCategory.Title), new PlaceHolder("[AssetState]", selectedAsset.State.ToString()) }; if (selectedAsset.AllocatedEmployee != null) { emailContext.PlaceHolders.Add(new PlaceHolder("[Name]", selectedAsset.AllocatedEmployee.User.Person.Name)); emailContext.ToAddress.Add(new MailAddress(selectedAsset.AllocatedEmployee.OfficialEmail, selectedAsset.AllocatedEmployee.User.Person.Name)); } // Use POC settings if (settings.POCSettings != null) { var pointOfContact = settings.POCSettings.ITDepartmentLevel1; //var selectedPOC = _userRepository.Get(pointOfContact, "Person"); var selectedPOC = _employeeRepository.Get(pointOfContact, "User,User.Person"); if (selectedPOC != null) { var pocAddress = new MailAddress(selectedPOC.OfficialEmail, selectedPOC.User.Person.Name); // No Assigned Person if (selectedAsset.AllocatedEmployee == null) { emailContext.PlaceHolders.Add(new PlaceHolder("[Name]", selectedPOC.User.Person.Name)); emailContext.ToAddress.Add(pocAddress); } // Copy POC emailContext.CcAddress.Add(pocAddress); } } emailContext.Subject = "Asset Modification"; } return(emailContext); }