IOrganizationService.Disassociate Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Deletes a link between records.
public:
void Disassociate(System::String ^ entityName, Guid entityId, Microsoft::Xrm::Sdk::Relationship ^ relationship, Microsoft::Xrm::Sdk::EntityReferenceCollection ^ relatedEntities);
[System.ServiceModel.FaultContract(typeof(Microsoft.Xrm.Sdk.OrganizationServiceFault))]
[System.ServiceModel.OperationContract]
public void Disassociate (string entityName, Guid entityId, Microsoft.Xrm.Sdk.Relationship relationship, Microsoft.Xrm.Sdk.EntityReferenceCollection relatedEntities);
[<System.ServiceModel.FaultContract(typeof(Microsoft.Xrm.Sdk.OrganizationServiceFault))>]
[<System.ServiceModel.OperationContract>]
abstract member Disassociate : string * Guid * Microsoft.Xrm.Sdk.Relationship * Microsoft.Xrm.Sdk.EntityReferenceCollection -> unit
Public Sub Disassociate (entityName As String, entityId As Guid, relationship As Relationship, relatedEntities As EntityReferenceCollection)
Parameters
- entityName
- String
Type: String. The logical name of the entity that is specified in the entityId
parameter.
- relationship
- Relationship
Type: Relationship. The name of the relationship to be used to remove the link.
- relatedEntities
- EntityReferenceCollection
Type: EntityReferenceCollection. A collection of entity references (references to records) to be disassociated.
- Attributes
Examples
The following example demonstrates how to use the Disassociate(String, Guid, Relationship, EntityReferenceCollection) method to remove an association or link between records (early bound).
The following example demonstrates how to use the Disassociate(String, Guid, Relationship, EntityReferenceCollection) method to remove an association or link between records (late bound).
Remarks
Privileges and Access Rights
To perform this action, the caller must have privileges on the entity that is specified in the entityName
parameter and access rights on the records that are specified in the entityId
and relatedEntities
parameters. For a list of the required privileges, see Delete message privileges.
Notes for Callers
This method removes multiple associations in one transaction between the record that is specified by the entityId
parameter and each record in the relatedEntities
parameter for the relationship that is specified in the relationship
parameter.
For a one-to-many relationship, this method clears the ReferencingAttribute in the related record to the value of entityId
.
For a many-to-many relationship, this method deletes a record in the intersect table for the relationship. The intersect table name is defined in the IntersectEntityName property for the relationship. You need this when you query for the records. However, you need the relationship name to set the Relationship property. This name is defined in the SchemaName property for the relationship.
For more information about the exceptions that can be thrown when this method is called, see Handle exceptions in your code.
Supported Entities
You can use this method to disassociate any records that participate in a relationship, including records for custom entities.