Skip to main content

DataverseConnection

  • Namespace: PPDS.Dataverse.Pooling
  • Assembly: PPDS.Dataverse
  • Kind: Class

Summary​

Configuration for a Dataverse connection (Application User / Service Principal). Multiple connections can be configured to distribute load across Application Users.

Members​

Constructors​

DataverseConnection()​

DataverseConnection()

Initializes a new instance of the PPDS.Dataverse.Pooling.DataverseConnection class.

DataverseConnection(string name)​

DataverseConnection(string name)

Initializes a new instance of the PPDS.Dataverse.Pooling.DataverseConnection class.

  • Param name: The unique name for this connection.

Methods​

ToString​

string ToString()

Returns a string representation of the connection configuration. Credentials are intentionally excluded to prevent leakage.

Properties​

AuthType​

DataverseAuthType AuthType { get; set; }

Gets or sets the authentication type. Default: ClientSecret

CertificateStoreLocation​

string CertificateStoreLocation { get; set; }

Gets or sets the certificate store location. Default: CurrentUser

CertificateStoreName​

string CertificateStoreName { get; set; }

Gets or sets the certificate store name. Default: My

CertificateThumbprint​

string CertificateThumbprint { get; set; }

Gets or sets the certificate thumbprint for certificate auth.

ClientId​

string ClientId { get; set; }

Gets or sets the Azure AD application (client) ID. Required for all auth types.

ClientSecret​

string ClientSecret { get; set; }

Gets or sets the client secret. Can be set directly, via environment variable binding, or use ClientSecretKeyVaultUri for Key Vault.

ClientSecretKeyVaultUri​

string ClientSecretKeyVaultUri { get; set; }

Gets or sets the Azure Key Vault secret URI for the client secret. Highest priority for secret resolution. Example: https://myvault.vault.azure.net/secrets/dataverse-secret

LoginPrompt​

OAuthLoginPrompt LoginPrompt { get; set; }

Gets or sets the OAuth login prompt behavior. Default: Auto

MaxPoolSize​

int MaxPoolSize { get; set; }

Gets or sets the maximum connections to create for this configuration. Default: 10

Name​

string Name { get; set; }

Gets or sets the unique name for this connection. Used for logging, metrics, and identifying which Application User is handling requests.

RedirectUri​

string RedirectUri { get; set; }

Gets or sets the OAuth redirect URI. Required for OAuth authentication.

TenantId​

string TenantId { get; set; }

Gets or sets the Azure AD tenant ID. Optional - defaults to common tenant.

Url​

string Url { get; set; }

Gets or sets the Dataverse environment URL. Example: https://contoso.crm.dynamics.com