public bool DeleteRelationship(IOrganizationService service, XRMSpeedyRelationship relationship) { try { DeleteRelationshipRequest delete = new DeleteRelationshipRequest { Name = relationship.SchemaName }; service.Execute(delete); return(true); } catch (FaultException <OrganizationServiceFault> ) { throw; } }
public bool CreateManyToMany(IOrganizationService service, XRMSpeedyRelationship relationship, string prefix, int languageCode) { try { CreateManyToManyRequest createManyToManyRelationshipRequest = new CreateManyToManyRequest { IntersectEntitySchemaName = relationship.SchemaName, ManyToManyRelationship = new ManyToManyRelationshipMetadata { SchemaName = relationship.SchemaName, Entity1LogicalName = relationship.Entity1, Entity1AssociatedMenuConfiguration = new AssociatedMenuConfiguration { Behavior = AssociatedMenuBehavior.UseLabel, Group = AssociatedMenuGroup.Details, Label = new Label(relationship.Entity1Display, languageCode), Order = 10000 }, Entity2LogicalName = relationship.Entity2, Entity2AssociatedMenuConfiguration = new AssociatedMenuConfiguration { Behavior = AssociatedMenuBehavior.UseLabel, Group = AssociatedMenuGroup.Details, Label = new Label(relationship.Entity2Display, languageCode), Order = 10000 } } }; CreateManyToManyResponse createManytoManyRelationshipResponse = (CreateManyToManyResponse)service.Execute(createManyToManyRelationshipRequest); return(true); } catch (FaultException <OrganizationServiceFault> ) { throw; } }
public bool CreateOneToMany(IOrganizationService service, XRMSpeedyRelationship relationship, string prefix, int languageCode) { try { CreateOneToManyRequest createOneToManyRelationshipRequest = new CreateOneToManyRequest { OneToManyRelationship = new OneToManyRelationshipMetadata { ReferencedEntity = relationship.Entity1, ReferencingEntity = relationship.Entity2, SchemaName = relationship.SchemaName, AssociatedMenuConfiguration = new AssociatedMenuConfiguration { Behavior = AssociatedMenuBehavior.UseLabel, Group = AssociatedMenuGroup.Details, Label = new Label(relationship.Entity1.Substring(0, 1).ToUpper() + relationship.Entity1.Substring(1), languageCode), Order = 10000 }, CascadeConfiguration = new CascadeConfiguration { Assign = CascadeType.NoCascade, Delete = CascadeType.RemoveLink, Merge = CascadeType.Cascade, Reparent = CascadeType.NoCascade, Share = CascadeType.NoCascade, Unshare = CascadeType.NoCascade } }, Lookup = relationship.PrimaryField }; CreateOneToManyResponse createOneToManyRelationshipResponse = (CreateOneToManyResponse)service.Execute(createOneToManyRelationshipRequest); return(true); } catch (FaultException <OrganizationServiceFault> ) { throw; } }