Partager via


CanBeReferencingRequest Class

Definition

Contains the data that is needed to check whether a table can be the referencing table in a one-to-many relationship.

public ref class CanBeReferencingRequest sealed : Microsoft::Xrm::Sdk::OrganizationRequest
[System.Runtime.Serialization.DataContract(Namespace="http://schemas.microsoft.com/xrm/2011/Contracts")]
public sealed class CanBeReferencingRequest : Microsoft.Xrm.Sdk.OrganizationRequest
[<System.Runtime.Serialization.DataContract(Namespace="http://schemas.microsoft.com/xrm/2011/Contracts")>]
type CanBeReferencingRequest = class
    inherit OrganizationRequest
Public NotInheritable Class CanBeReferencingRequest
Inherits OrganizationRequest
Inheritance
CanBeReferencingRequest
Attributes

Examples

The following example shows how to use this message. For this sample to work correctly, you must be connected to the server to get an IOrganizationService interface instance.

/// <summary>
/// Determines whether two tables are eligible to participate in a one-to-many relationship
/// </summary>
/// <param name="service">Authenticated IOrganizationService instance</param>
/// <param name="referencedEntityLogicalName">Primary table</param>
/// <param name="referencingEntityLogicalName">Referencing table</param>
/// <returns>Whether the tables are eligble.</returns>
public static bool CheckEligibilityForOneToManyRelationship(IOrganizationService service,
      string referencedEntityLogicalName,
      string referencingEntityLogicalName)
{
      //Checks whether the specified table can be the primary table in one-to-many
      //relationship.
      CanBeReferencedRequest canBeReferencedRequest = new()
      {
         EntityName = referencedEntityLogicalName
      };

      var canBeReferencedResponse =
         (CanBeReferencedResponse)service.Execute(canBeReferencedRequest);

      //Checks whether the specified table can be the referencing table in one-to-many
      //relationship.
      CanBeReferencingRequest canBeReferencingRequest = new()
      {
         EntityName = referencingEntityLogicalName
      };

      CanBeReferencingResponse canBeReferencingResponse =
         (CanBeReferencingResponse)service.Execute(canBeReferencingRequest);

      return canBeReferencedResponse.CanBeReferenced && canBeReferencingResponse.CanBeReferencing;
}

Also see Sample: Create and retrieve table relationships.

Sample code on GitHub

Create and retrieve table relationships

Remarks

For the Web API use the CanBeReferencing action.

Usage

Pass an instance of this class to the Execute(OrganizationRequest) method, which returns an instance of the CanBeReferencingResponse class.

Privileges and Access Rights

To perform this action, the caller must have Read privileges to the tables referenced.

Constructors

CanBeReferencingRequest()

Initializes a new instance of the CanBeReferencingRequest class.

Properties

EntityName

Gets or sets the logical table name. Required.

ExtensionData

Gets or sets the structure that contains extra data. Optional.

(Inherited from OrganizationRequest)
Item[String]

Gets or sets the indexer for the Parameters collection.

(Inherited from OrganizationRequest)
Parameters

Gets or sets the collection of parameters for the request. Required, but is supplied by derived classes.

(Inherited from OrganizationRequest)
RequestId

Gets or sets the ID of the request. Optional.

(Inherited from OrganizationRequest)
RequestName

Gets or sets the name of the request. Required, but is supplied by derived classes.

(Inherited from OrganizationRequest)

Applies to

See also