/// <summary>
 ///     Initializes a new instance of the <see cref="RoleIsValidRule" /> class.
 /// </summary>
 /// <param name="name"> The name. </param>
 /// <param name="message"> The message. </param>
 /// <param name="target"></param>
 public RoleIsValidRule(string name, string message, Role target)
     : base(name, message)
 {
     this.Rules.Add(new IsNotNullRule("RoleIsNotNull", "The role cannot be null.", target));
     if (target != null)
     {
         this.Rules.Add(new StringIsNotNullEmptyRange("NameStringIsNotNullEmptyRange", "The name is not valid. Must be between 3 and 25 characters.", target.Name, 3, 25));
         this.Rules.Add(new StringIsNotNullEmptyRange("DescriptionStringIsNotNullEmptyRange", "The descriptions is not valid. Must be between 10 and 200 characters.", target.Description, 10, 200));
     }
 }
 public ActionResult Edit(Role role)
 {
     if (ModelState.IsValid)
     {
         bool isSaved = this.MembershipService.UpdateRole(role);
         if (isSaved)
         {
             return RedirectToAction("Index");
         }
     }
     return View(role);
 }
 /// <summary>
 /// Creates the role.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <returns></returns>
 public override bool CreateRole(Role role)
 {
     bool isCreated = false;
     using (this.dbContext = new BuildMotionDb(this.connectionStringName))
     {
         this.dbContext.Roles.Add(role);
         int result = this.dbContext.SaveChanges();
         isCreated = result > 0;
     }
     return isCreated;
 }
 /// <summary>
 /// Updates the role.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <returns></returns>
 public override bool UpdateRole(Role role)
 {
     bool isUpdated = false;
     using (this.dbContext = new BuildMotionDb(this.connectionStringName))
     {
         this.dbContext.Roles.Attach(role);
         this.dbContext.Entry(role).State = EntityState.Modified;
         int result = this.dbContext.SaveChanges();
         isUpdated = result > 0;
     }
     return isUpdated;
 }
 /// <summary>
 /// Creates the role.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <returns></returns>
 public bool CreateRole(Role role)
 {
     return this.dataAccessContext.EntityFrameworkDataAccess.CreateRole(role);
 }
 public ActionResult Create()
 {
     Role model = new Role();
     model.IsActive = true;
     return View(model);
 }
 /// <summary>
 /// Creates the role.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <returns></returns>
 public bool CreateRole(Role role)
 {
     return this.provider.CreateRole(role);
 }
 /// <summary>
 /// Updates the role.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <returns></returns>
 public bool UpdateRole(Role role)
 {
     return this.provider.UpdateRole(role);
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="CreateRoleAction"/> class.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <param name="membershipProvider">The membership provider.</param>
 public CreateRoleAction(Role role, MembershipProviderBase membershipProvider)
     : base(membershipProvider)
 {
     this.role = role;
 }
 /// <summary>
 ///     Updates the role.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <returns></returns>
 public override bool UpdateRole(Role role)
 {
     bool isUpdated = false;
     UpdateRoleAction action = new UpdateRoleAction(role, this);
     action.Execute();
     if (action.Result == ActionResult.Success)
     {
         isUpdated = action.IsUpdated;
     }
     return isUpdated;
 }
 /// <summary>
 /// Creates the role.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <returns></returns>
 public bool CreateRole(Role role)
 {
     return this.adaptor.CreateRole(role);
 }
 /// <summary>
 /// Updates the role.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <returns></returns>
 public bool UpdateRole(Role role)
 {
     return this.adaptor.UpdateRole(role);
 }
 /// <summary>
 /// Creates the role.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <returns></returns>
 public abstract bool CreateRole(Role role);
 /// <summary>
 /// Updates the role.
 /// </summary>
 /// <param name="role">The role.</param>
 /// <returns></returns>
 public abstract bool UpdateRole(Role role);
 /// <summary>
 /// Does this instance.
 /// </summary>
 public override void PerformAction()
 {
     this.role = this.Repository.RetrieveRole(this.roleId);
 }