Indicates that the SDK did not expect to find something particular in a payload from the server. Typically, this indicates an SDK bug. These are thrown as a form of defensive programming. Please report if you encounter this in a production release: https://github.com/temporalio/sdk-dotnet/issues
Different version of .NET use different gRPC libraries (Net Fx uses gRPC Core C-Lib, and Net Core and Net modern use
a managed gRPC.Net implementation). Unfortunately, the hadling of certificates is different in those libraries.
Among other things, gRPC Core C-Lib does not natively support
X509Certificate2 and requires PEM formatted data.
X509Certificate2 is de-facto standard for Windows / .NET users. Unfortunetely, in some scenarios it
is not easy to turn key from a
X509Certificate2 into a format accepted by the gRPC Core C-Lib.
In the long term, and if users request, we will find a way to work around this and make it convenient. In the interim, however, we will simply require PEM-formatted input on classic Net-Fx. On Net Core, we will support both, PEM and
This type (
TemporalClientConfiguration.TlsCertificate) is an abstraction of a configured certificate / key.
It can be created from PEM, a
X509Certificate2, or both depending on the platform.