Pergunta

Is there any way to get the name of a relationship given the from and to entities?

I have a fairly dynamic piece of code that needs to Associate or Disassociate entities. In order to call these functions, I need to know the name of the relationship. I am not sure how to determine the relationship name just given the two entities.

For example, my code might need to disassociate an account with a contact. How can I determine the relationship name of "account_primary_contact"?

Foi útil?

Solução

In the interest of answering the question despite my not understanding why you would want to do this:

foreach (OneToManyRelationshipMetadata relationshipMetaData in primaryEntityMetadata.ManyToOneRelationships)
{
    if (relationshipMetaData.ReferencingEntity == relatedEntity.LogicalName)
    {
        string relationshipName = relationshipMetaData.SchemaName;
        //Do something with your relationship?
    }
}

Where primaryEntityMetadata is of type EntityMetadata and ReferencingEntity is of type Entity. Then use similar logic for checking Many to One relationships.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top