private void OnClaimValueChanged(ApiClaim claim) { Model.ApiClaims.Add(claim); _claim = new ApiClaim(); claim.Id = Guid.NewGuid().ToString(); HandleModificationState.EntityCreated(claim); }
public void AddApiResource(ApiResourceDto apiResourceDto) { ApiResource apiResource = apiResourceDto.ToEntity(); if (!CanInsertApiResource(apiResource)) { throw new FluentValidationException("ApiResource名称重复。"); } var transaction = this.Session.BeginTransaction(); try { this.Session.Save(apiResource); apiResourceDto.UserClaims.ForEach(type => { ApiClaim apiClaim = new ApiClaim(); apiClaim.ApiResourceId = apiResource.Id; apiClaim.Type = type; this.Session.Save(apiClaim); }); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); throw ex; } }
public void UpdateApiResource(int id, ApiResourceDto apiResourceDto) { ApiResource apiResource = this.Session.Get <ApiResource>(id); apiResource = apiResourceDto.ToEntity(apiResource); if (!CanInsertApiResource(apiResource)) { throw new FluentValidationException("ApiResource名称重复。"); } var transaction = this.Session.BeginTransaction(); try { this.Session.Update(apiResource); this.Session.CreateQuery("delete from ApiClaim where ApiResourceId=:ApiResourceId") .SetInt32("ApiResourceId", id) .ExecuteUpdate(); apiResourceDto.UserClaims.ForEach(type => { ApiClaim apiClaim = new ApiClaim(); apiClaim.ApiResourceId = apiResource.Id; apiClaim.Type = type; this.Session.Save(apiClaim); }); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); throw ex; } }
private void OnClaimValueChanged(ApiClaim claim) { claim.Api = Model; Model.ApiClaims.Add(new ApiClaim { Api = Model }); HandleModificationState.EntityCreated(claim); }
private void OnDeleteClaimClicked(ApiClaim claim) { Model.ApiClaims.Remove(claim); HandleModificationState.EntityDeleted(claim); }