private void NotifyResponse_SendingEmail(object sender, EventArgs e) { SendEmailActivity activity = (SendEmailActivity)sender; Dictionary<string, string> parameters = new Dictionary<string, string>(); WikiHistory record = WikiHistory.Load(WorkflowEnvironment.WorkflowInstanceId); WikiSerializable item = new WikiSerializable(record); string responsePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, WikiService.Provider.ResponseSchemaPath); Stream template = File.OpenRead(responsePath); try { MailMessage message = PostOfficeService.Create(item, template, parameters); if (string.IsNullOrEmpty(record.Author)) return; MembershipUser user = Membership.GetUser(record.Author); if (user == null || string.IsNullOrEmpty(user.Email)) return; message.AddAddresses(user.Email); activity.UserData.Add("MailMessage", message); } finally { template.Close(); } }
private void NotifyRequest_SendingEmail(object sender, EventArgs e) { SendEmailActivity activity = (SendEmailActivity)sender; Dictionary<string, string> parameters = new Dictionary<string, string>(); WorkWikiItem workitem = WorkWikiItem.Load(WorkflowEnvironment.WorkflowInstanceId); WikiSerializable item = new WikiSerializable(workitem); string requestPath = Path.Combine(HostingEnvironment.ApplicationPhysicalPath, WikiService.Provider.RequestSchemaPath); Stream template = File.OpenRead(requestPath); try { MailMessage message = PostOfficeService.Create(item, template, parameters); if (string.IsNullOrEmpty(workitem.Authorizer)) return; MembershipUser auhtorizer = Membership.GetUser(workitem.Authorizer); if (auhtorizer == null || string.IsNullOrEmpty(auhtorizer.Email)) return; message.AddAddresses(auhtorizer.Email); activity.UserData.Add("MailMessage", message); } finally { template.Close(); } }