【问题标题】:Passing QueueClientOptions to Queueclient constructor in VB.NET将 QueueClientOptions 传递给 VB.NET 中的 Queueclient 构造函数
【发布时间】:2021-03-31 14:11:15
【问题描述】:

我需要在现有的 VB.Net Windows 窗体应用程序中实现一些 Azure 存储队列功能。一切正常,直到我遇到 Base64 编码问题,在我的 Azure 函数日志中找到此消息:

输入不是有效的 Base-64 字符串,因为它包含非 base-64 字符、两个以上的填充字符或填充字符中的非法字符。

我找到了this post 如何在 C# 中执行此操作,但我无法弄清楚如何在 VB.NET 中执行此操作。

这是有效的语法 - 至少它被 Visual Studio 中的解释器正确接受:

Dim qc As QueueClient = New QueueClient(connstr, "licensecreationqueue", New QueueClientOptions)

但我需要根据其他帖子中的这段代码来实现 Base64 编码:

_queue = new QueueClient(connectionString, queueName, new QueueClientOptions
{
    MessageEncoding = QueueMessageEncoding.Base64
});

我只是不知道如何将QueueMessageEncoding.Base64 合并到构造函数中的语法,并且没有一个在线转换器(Telerik 等人)能够解决它。

【问题讨论】:

标签: c# vb.net azure


【解决方案1】:

我刚刚想通了。 QueueClientOptions 是它自己独特的类,具有自己的属性,因此您必须创建它,然后在创建它时将其传递给 QueueClient。发布解决方案以防对其他人有帮助:

Dim connstr As String = "My Connection String"
Dim queuename as string = "myqueue"
Dim qco As New QueueClientOptions
qco.MessageEncoding = QueueMessageEncoding.Base64
Dim qc As QueueClient = New QueueClient(connstr, queuename, qco)

【讨论】:

  • 顺便说一句,这也可以:Dim queueClient As QueueClient = New QueueClient(connstr, queueName, New QueueClientOptions() With {.MessageEncoding = QueueMessageEncoding.Base64})
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-07
  • 2011-09-24
  • 2012-01-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多