/// <summary> /// Use to update a database record. /// </summary> /// <param name="view">Client Resource Access Claim</param> /// <returns>ClientResourceAccessClaim</returns> internal virtual ClientResourceAccessClaim ToEntity(ClientResourceAccessClaim view = null) { if (view == null) { view = new ClientResourceAccessClaim(); } view.Access = view.Access; return(view); }
public ClientResourceAccessClaimVm(ClientResourceAccessClaim view = null) { if (view == null) { return; } _id = view.Id; _clientResourceAccessId = view.ClientResourceAccessId; _resourceClaimId = view.ResourceClaimId; Access = view.Access; }
/// <summary> /// Add new claim the an existing client resource access /// </summary> /// <param name="resourceId">Client Resource Acces Id</param> /// <param name="claimId">Resource Claim Id</param> /// <param name="access">Client Resource Claims Access</param> /// <returns><![CDATA[ (ClientResourceAccessClaimVm Claim, bool IsSuccess, string Message) ]]></returns> public (ClientResourceAccessClaimVm Claim, bool IsSuccess, string Message) AddClaim(int resourceId, int claimId, ClientResourceClaimsAccess access) { try { // check to make sure that the client resource does exists inside the client. var dbResAccess = ClientDataAccess.ClientResourceAccess.GetById(resourceId); if (dbResAccess == null) { return(null, false, ResourceManagerMessages.Error.RESOURCE_NOT_FOUND); } var dbClaimCheck = ClientDataAccess.ClientResourceAccessClaim.Find(f => f.ClientResourceAccessId == resourceId && f.ResourceClaimId == claimId); if (dbClaimCheck != null) { return(null, false, ResourceManagerMessages.Error.CLAIM_ADD_ALREADY_EXISTS); } var dbClaim = new ClientResourceAccessClaim() { ResourceClaimId = claimId, ClientResourceAccessId = dbResAccess.Id, Access = access, }; ClientDataAccess.ClientResourceAccessClaim.Create(dbClaim); ClientDataAccess.Save(); return(new ClientResourceAccessClaimVm(dbClaim), true, ResourceManagerMessages.Success.CLAIM_CREATED); } catch (DbEntityValidationException ex) { #if (DEBUG) // for debuging entity framework foreach (var error in ex.EntityValidationErrors.SelectMany(valError => valError.ValidationErrors)) { Console.WriteLine(error.ErrorMessage); } #endif throw; } catch { throw; } }