<PackageReference Include="System.ClientModel" Version="1.7.0" />

ClientConnection

public struct ClientConnection
Represents the connection options for a client.
using System.Collections.Generic; using System.Runtime.CompilerServices; namespace System.ClientModel.Primitives { [System.Runtime.CompilerServices.NullableContext(1)] [System.Runtime.CompilerServices.Nullable(0)] public readonly struct ClientConnection { public string Id { get; } public string Locator { get; } [System.Runtime.CompilerServices.Nullable(2)] [field: System.Runtime.CompilerServices.Nullable(2)] public object Credential { [System.Runtime.CompilerServices.NullableContext(2)] get; } public CredentialKind CredentialKind { get; } public IReadOnlyDictionary<string, string> Metadata { get; } public ClientConnection(string id, string locator, object credential, CredentialKind credentialKind) { this = new ClientConnection(id, locator, credential, credentialKind, null); } public ClientConnection(string id, string locator) { this = new ClientConnection(id, locator, null, CredentialKind.None, null); } internal ClientConnection(string id, string locator, CredentialKind credentialKind) { Credential = null; Id = id; Locator = locator; CredentialKind = credentialKind; Metadata = new Dictionary<string, string>(); } public ClientConnection(string id, string locator, [System.Runtime.CompilerServices.Nullable(2)] object credential, CredentialKind credentialKind, [System.Runtime.CompilerServices.Nullable(new byte[] { 2, 1, 1 })] IReadOnlyDictionary<string, string> metadata) { if (string.IsNullOrWhiteSpace(id)) throw new ArgumentException("Id cannot be null or empty.", "id"); if (string.IsNullOrWhiteSpace(locator)) throw new ArgumentException("Locator cannot be null or empty.", "locator"); if (credential == null && credentialKind != 0) throw new ArgumentNullException("credential", "Credential cannot be null."); if (metadata == null) Metadata = new Dictionary<string, string>(); else Metadata = metadata; Id = id; Locator = locator; Credential = credential; CredentialKind = credentialKind; } [System.Runtime.CompilerServices.NullableContext(2)] public bool TryGetLocatorAsUri(out Uri uri) { return Uri.TryCreate(Locator, UriKind.Absolute, out uri); } public override string ToString() { return Id + " => " + Locator; } } }