sf.*_*sf. 26 azure azureservicebus azure-servicebus-queues azure-webjobs azure-webjobssdk
我正在尝试使用Azure WebJob从Azure ServiceBus队列中读取消息,但它正在抛出异常:
Unhandled Exception: System.InvalidOperationException: Found 2 DNS claims in authorization context.
Run Code Online (Sandbox Code Playgroud)
我已经设置了名为"AzureWebJobsServiceBus","AzureWebJobsDashboard"和"AzureWebJobsStorage"的正确连接字符串
WebJob程序代码已更新为使用JobHostConfiguration:
class Program
{
static void Main()
{
var config = new JobHostConfiguration();
config.UseServiceBus();
var host = new JobHost(config);
host.RunAndBlock();
}
}
Run Code Online (Sandbox Code Playgroud)
而实际的Job方法
public class Functions
{
public async static Task ServiceBusResizeRequest(
[ServiceBusTrigger("blah")] string message,
TextWriter log
)
{
await log.WriteLineAsync("got message " + message);
}
}
Run Code Online (Sandbox Code Playgroud)
我可以通过单独的控制台应用程序成功创建和写入队列.
但是当我运行webjob应用程序时,它会抛出异常.
有任何想法吗?
编辑:使用.net 4.6.1
Alb*_*eón 39
标记为解决方案的答案不是解决方案,而是一项拙劣的工作.在.Net Framework 4.6.1中使用它的解决方案是在App.config中添加rutime块:
<AppContextSwitchOverrides value="Switch.System.IdentityModel.DisableMultipleDNSEntriesInSANCertificate=true" />
Run Code Online (Sandbox Code Playgroud)
阅读本文缓解:X509CertificiateClaimSet.FindClaims方法
非常重要的是现在Azure WebApps/WebJob等,不支持4.6.1我会在这里注意(2016年1月21日说).
这意味着,您可以使用4.6.1开发Web作业应用程序,但是当您将其推送到Azure时,您可以看到类似的异常 Job failed due to exit code -2146232576
lsm*_*eby 20
1月29日微软发布了NuGet包WindowsAzure.ServiceBus 3.1.3版.
从发行说明:
•常规:.Net 4.6.1+兼容性修补程序.修复自定义DNS IdentityVerifier,以便我们兑现WIF返回的多个DNS声明
升级包解决了我们的问题.
| 归档时间: |
|
| 查看次数: |
6002 次 |
| 最近记录: |