簡體   English   中英

缺少ServiceBusConnectionString時的FunctionIndexingException

[英]FunctionIndexingException when missing ServiceBusConnectionString

我創建了以下程序:

using System;
using Microsoft.Azure.WebJobs;

namespace StayUpdated.Cpe.PypyFilter
{
    public class Program
    {
        public static void Main()
        {
            var jobHost = new JobHost();
            jobHost.RunAndBlock();
        }

        public static void ProcessQueue([ServiceBusTrigger("start")] String input)
        {
        }
    }
}

在app.config中我添加以下連接字符串:

<add name="AzureWebJobsDashboard" connectionString="DefaultEndpointsProtocol=https;AccountName=cpepypywebjobstorage;AccountKey=2iCufOrnXeY/B/VJptegGXaAbEmoj1SOgiiAbunk1kDAPqhkgvcOj3NEVGqtm0363GHu/h6Fy8JfoWEpKCP2Rw==" />
<add name="AzureWebJobsStorage" connectionString="DefaultEndpointsProtocol=https;AccountName=cpepypywebjobstorage;AccountKey=2iCufOrnXeY/B/VJptegGXaAbEmoj1SOgiiAbunk1kDAPqhkgvcOj3NEVGqtm0363GHu/h6Fy8JfoWEpKCP2Rw==" />

我得到一個帶有消息的Error indexing method 'ProcessQueue'FunctionIndexingException異常。

這是由於缺少AzureWebJobsServiceBus連接字符串。 您必須添加該連接字符串或通過JobHostConfiguration手動連接ServiceBusConnectionString

您可以查看該異常的內部異常,並看到它是帶有消息的ConfigurationErrorsException

配置缺少必需的信息。 確保屬性“端點”被定義為“appSettings”部分或Windows Azure配置設置中“Microsoft.ServiceBus.ConnectionString”鍵的一部分。

不幸的是,遵循異常消息中提供的說明將不起作用。

我相信原因是因為沒有服務總線連接字符串,JobHost不會加載它需要加載的任何東西,以便成功解析ServiceBusTrigger屬性。

如果您收到的錯誤是沿着的,那會好得多,

嘗試在沒有ServiceBusConnectionString的情況下設置ServiceBusTrigger。

更好的是只記錄一個警告,即有永遠不會被擊中並繼續的觸發器。 有人可能希望設置觸發器但不總是有服務總線連接字符串。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM