public static async Task <T?> TryConnectAsync <T>(Endpoint?Endpoint, OutOfProcessClientOptions?Options = default) where T : class { var ret = default(T); if (Endpoint is { } V1&& TryGetProvider(Endpoint?.Provider) is { } V2) { try { ret = await V2.ConnectAsync <T>(V1, Options) .DefaultAwait() ; } catch { } } return(ret); }