Я использую Mqt tNet Библиотека для подключения к предоставленному серверу Mqtt в моем приложении. Я использую управляемый клиент mqt tnet из здесь
, получая небольшую проблему, я не могу добавить сертификат с клиентом. это дает мне ошибку несоответствия типов.
это мой код.
var URL = MqttConfiguration.MqttBrokerAddress;
var username = MqttConfiguration.MqttClientUserName;
var password = MqttConfiguration.MqttClientPassword;
var SSLport = MqttConfiguration.SSLPort;
var options = new ManagedMqttClientOptionsBuilder()
.WithAutoReconnectDelay(TimeSpan.FromSeconds(30))
.WithClientOptions(new MqttClientOptionsBuilder()
.WithClientId(Guid.NewGuid().ToString())
.WithTcpServer(URL, SSLport)
.WithCredentials(username, password)
//.WithTls( GetMqttClientOptions())
.WithTls(new MqttClientOptionsBuilderTlsParameters()
{
AllowUntrustedCertificates = false,
UseTls = true,
Certificates = new List<byte[]> { new X509Certificate2(caCert).Export(X509ContentType.Cert) },
CertificateValidationCallback = delegate { return true; },
IgnoreCertificateChainErrors = false,
IgnoreCertificateRevocationErrors = false
})
.WithCleanSession()
.WithProtocolVersion(MQTTnet.Formatter.MqttProtocolVersion.V311)
.Build())
.Build();
await mqttClient.SubscribeAsync(new TopicFilterBuilder().WithTopic(Topics.handshake).Build());
await mqttClient.StartAsync(options);
Я получаю ошибку, когда в этой строке
Certificates = new List<byte[]> { new X509Certificate2(caCert).Export(X509ContentType.Cert) },
Сообщение об ошибке
Я застрял здесь два дня. нужна помощь.