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