public void RemoveAttributeValue(string id, string attribute, string value) { try { ResourceManagementSchema.ValidateAttributeName(attribute); ResourceManagementWebServicev2.ValidateID(id); CultureInfo locale = WebResponseHelper.GetLocale(); ResourceObject resource; if (ResourceManagementSchema.IsAttributeMultivalued(attribute)) { resource = Global.Client.GetResource(id, locale); } else { resource = Global.Client.GetResource(id, new[] { attribute }, locale); } if (resource == null) { throw new ResourceNotFoundException(); } if (!resource.Attributes.ContainsAttribute(attribute)) { WebResponseHelper.ThrowAttributeNotFoundException(attribute); } resource.Attributes[attribute].RemoveValue(value, true); Global.Client.SaveResource(resource, locale); WebOperationContext.Current.OutgoingResponse.StatusCode = HttpStatusCode.NoContent; } catch (WebFaultException) { throw; } catch (WebFaultException <Error> ) { throw; } catch (Exception ex) { ResourceManagementWebServicev2.HandleException(ex); throw; } }
public Stream GetResourceAttributeByID(string id, string attribute) { try { ResourceManagementSchema.ValidateAttributeName(attribute); ResourceManagementWebServicev2.ValidateID(id); CultureInfo locale = WebResponseHelper.GetLocale(); ResourceObject resource = Global.Client.GetResource(id, new[] { attribute }, locale); if (resource == null) { throw new ResourceNotFoundException(); } if (!resource.Attributes.ContainsAttribute(attribute)) { WebResponseHelper.ThrowAttributeNotFoundException(attribute); } List <string> result = resource.Attributes[attribute].ToStringValues().ToList(); return(WebResponseHelper.GetResponse(result, true)); } catch (WebFaultException) { throw; } catch (WebFaultException <Error> ) { throw; } catch (Exception ex) { ResourceManagementWebServicev2.HandleException(ex); throw; } }