当前位置: 首页>>代码示例>>C#>>正文


C# UserModel.UpdateEmail方法代码示例

本文整理汇总了C#中UserModel.UpdateEmail方法的典型用法代码示例。如果您正苦于以下问题:C# UserModel.UpdateEmail方法的具体用法?C# UserModel.UpdateEmail怎么用?C# UserModel.UpdateEmail使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在UserModel的用法示例。


在下文中一共展示了UserModel.UpdateEmail方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: SavePersonalInfo

 public ActionResult SavePersonalInfo(UserModel.User user)
 {
     if (ModelState.IsValid)
     {
         var UpdateEmail = false;
         string email = user.BillingEmail;
         var UserCurrentEmail = user.GetCurrentEmail(User.Identity.Name);
         var UserCurrentCompany = user.GetCompany(User.Identity.Name);
         var EnteredEmailValid = user.IsEmailValid(email);
         var regexItem = new Regex(@"\d");
         Regex regex = new Regex(@"^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$");
         Match match = regex.Match(email);
         if (!match.Success)
         {
             //Bad Email
             ModelState.AddModelError("BillingEmail", "Invalid Email");
         }
         else if (EnteredEmailValid && UserCurrentEmail != email)
         {
             //Email Taken
             ModelState.AddModelError("BillingEmail", "Email in use on another account");
             TempData["ViewData"] = ViewData;
         }
         else
         {
             UpdateEmail = true;
         }
         if (user.BillingName.Length < 5)
         {
             //Bad Username
             ModelState.AddModelError("BillingName", "Username must be a least 5 characters in length");
         }
         else if (user.DoesUsernameExist(user.BillingName) && user.BillingName != User.Identity.Name)
         {
             //Username already exists
             ModelState.AddModelError("BillingName", "Username is not available");
         }
         else if (user.Company.Length < 1)
         {
             //No company entered
             ModelState.AddModelError("Company", "Company name is not valid");
         }
         else if (UpdateEmail)
         {
             if (EnteredEmailValid && UserCurrentEmail == email)
             {
                 //Same email
             }
             else
             {
                 //Update email
                 var emailUpdateStatus = user.UpdateEmail(email, User.Identity.Name);
                 if (emailUpdateStatus == BusinessEntities.EmailUpdateStatus.Error)
                 {
                     //error view
                     return RedirectToAction("Error", "User");
                 }
             }
             //Update Username
             if (user.BillingName != User.Identity.Name)
             {
                 var userEmail = user.GetCurrentEmail(User.Identity.Name);
                 if (user.UpdateUsername(user.BillingName, User.Identity.Name))
                 {
                     //Authentication
                     HttpCookie userNameCookie = new HttpCookie("QueueViewUserName");
                     DateTime now = DateTime.Now;
                     userNameCookie.Value = User.Identity.Name;
                     userNameCookie.Expires = now.AddDays(-1D);
                     Response.Cookies.Add(userNameCookie);
                     FormsAuthentication.SignOut();
                     FormsAuthentication.SetAuthCookie(user.BillingName, false);
                 }
                 else
                 {
                     //error view
                     return RedirectToAction("Error", "User");
                 }
             }
             if (UserCurrentCompany != user.Company)
             {
                 if (!user.UpdateCompany(user.Company, User.Identity.Name))
                 {
                     //error view
                     return RedirectToAction("Error", "User");
                 }
             }
         }
     }
     TempData["ViewData"] = ViewData;
     return RedirectToAction("AccountDashboard", "User", new {ADID = "PersonalInfo"});
 }
开发者ID:rtom1986,项目名称:The-Queue-View,代码行数:92,代码来源:UserController.cs


注:本文中的UserModel.UpdateEmail方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。