コード例 #1
0
        public ActionResult EmailUsers([FromBody] EmailUsersContainer container)
        {
            if (string.IsNullOrWhiteSpace(container.Subject) || string.IsNullOrWhiteSpace(container.Body))
            {
                return(StatusCode((int)HttpStatusCode.BadRequest, new { Error = Resources.SubjectAndBodyNotEmpty }));
            }
            var baseString = this.FullUrlHelper("Unsubscribe", AccountController.Name, new { id = "--id--", key = "--key--" });

            baseString = baseString.Replace("--id--", "{0}").Replace("--key--", "{1}");
            string UnsubscribeLinkGenerator(User user) => string.Format(baseString, user.UserID, _profileService.GetUnsubscribeHash(user));

            _mailingListService.MailUsers(container.Subject, container.Body, container.HtmlBody, UnsubscribeLinkGenerator);
            return(Ok());
        }
コード例 #2
0
        public ViewResult EmailUsers(string subject, string body, string htmlBody)
        {
            if (String.IsNullOrWhiteSpace(subject) || String.IsNullOrWhiteSpace(body))
            {
                ViewBag.Result = Resources.SubjectAndBodyNotEmpty;
                return(View());
            }
            var baseString = this.FullUrlHelper("Unsubscribe", AccountController.Name, new { id = "--id--", key = "--key--" });

            baseString = baseString.Replace("--id--", "{0}").Replace("--key--", "{1}");
            Func <User, string> unsubscribeLinkGenerator =
                user => String.Format(baseString, user.UserID, _profileService.GetUnsubscribeHash(user));

            _mailingListService.MailUsers(subject, body, htmlBody, unsubscribeLinkGenerator);
            return(View("EmailUsersSuccessful"));
        }