Приложение-функция Azure CosmosDbTrigger выдает ошибку нулевого параметра - PullRequest
0 голосов
/ 02 марта 2019

Я определяю приложение-функцию Azure следующим образом:

public static void Run(
            [CosmosDBTrigger(
            databaseName: "dbName",
            collectionName: "collectiontoMonitor",
            ConnectionStringSetting = "collectionConnectionStringSettingName",
            LeaseDatabaseName = "LeaseDBName",
            LeaseCollectionName = "LeaseCollection",
            LeaseConnectionStringSetting = "LeaseConnectionString",
            LeaseCollectionPrefix ="funcName")]IReadOnlyList<Document> input, ILogger log)
        {
..
}

Публикую из Visual Studio, и оно работает без ошибок.Однако функция никогда не срабатывает даже после изменений в коллекции.Если я запускаю функцию вручную, я получаю сообщение об ошибке:

Value cannot be null. Parameter name: o

Выше приведено точное сообщение об ошибке, и у меня нет параметра с именем 'o'.Чего мне не хватает.

Обновление : в случае, если это имеет значение, приложение Function имеет подписку, отличную от подписки на Cosmos.

1 Ответ

0 голосов
/ 03 марта 2019

Ладно, наконец-то у меня получилось, попросив создать коллекцию аренды, если она еще не существует.Ранее я создавал его вручную и, скорее всего, не настраивал его должным образом.После того как я удалил коллекцию аренды и запросил ее создание, если она не существует, я увидел, что она была создана правильно, и моя проблема была решена.

Изменение будет:

public static void Run(
            [CosmosDBTrigger(
            databaseName: "dbName",
            collectionName: "collectiontoMonitor",
            ConnectionStringSetting = "collectionConnectionStringSettingName",
            LeaseDatabaseName = "LeaseDBName",
            LeaseCollectionName = "LeaseCollection",
            LeaseConnectionStringSetting = "LeaseConnectionString",
            CreateLeaseCollectionIfNotExists = true, // Add this line
            LeaseCollectionPrefix ="funcName")]IReadOnlyList<Document> input, ILogger log)
        {
..
}
...