gpt4 book ai didi

c# - 用于输出或触发的不同连接字符串

转载 作者:太空宇宙 更新时间:2023-11-03 12:58:33 25 4
gpt4 key购买 nike

这里我有一个使用服务总线触发器和输出的网络作业功能。我想为输出和输入设置不同的配置。

public static void OnPush(
[ServiceBusTrigger("%PushProcessor.InputTopicName%", "%PushProcessor.InputTopicSubscriptionName%", AccessRights.Listen)]
BrokeredMessage message,
[ServiceBus("%PushProcessor.OutputTopicName%", AccessRights.Send)]
out BrokeredMessage output
)

我在最新的 API 中看到,可以通过服务总线扩展来控制作业主机。

JobHostConfiguration config = new JobHostConfiguration
{
StorageConnectionString = ConfigHelpers.GetConfigValue("AzureWebJobsStorage"),
DashboardConnectionString = ConfigHelpers.GetConfigValue("AzureWebJobsDashboard"),
NameResolver = new ByAppSettingsNameResolver()
};

config.UseServiceBus(new ServiceBusConfiguration
{
MessageOptions = new OnMessageOptions {
MaxConcurrentCalls = 2,
AutoRenewTimeout = TimeSpan.FromMinutes(1),
AutoComplete = true,
},
ConnectionString = ConfigHelpers.GetConfigValue("InputServiceBusConnectionString"),
});

不幸的是,我发现无法控制输出的连接字符串。我希望对输入和输出使用不同的连接字符串(不同的命名空间/访问权限)。

也许 API 可以支持将命名的作业主机配置注册到作业主机,并在触发器/输出的属性中引用该名称。无论如何,如果有办法做到这一点,请告诉我。

最佳答案

是的,在最新的 beta1 版本中,您还会看到现在有一​​个 ServiceBusAccountAttribute,您可以将其与 ServiceBusTrigger/ServiceBus 属性一起应用。例如:

    public static void Test(
[ServiceBusTriggerAttribute("test"),
ServiceBusAccount("testaccount")] BrokeredMessage message)
{
. . .
}

我们通过 StorageAccountAttribute 对所有其他属性类型(队列/Blob/表)执行了相同的操作。这些帐户属性可以在类/方法/参数级别应用。请尝试一下这个新功能,并让我们知道它如何为您服务。另请参阅release notes了解更多详情。

关于c# - 用于输出或触发的不同连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33109804/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com