Azure函数:CosmosDBTrigger在Visual Studio中未触发

psf*_*aki 6 c# azure visual-studio azure-functions azure-cosmosdb

TL; DR此示例不适用于VS2017。


我有一个蓝色的宇宙DB,想什么时候添加或更新有火一些逻辑。为此,CosmosDBTrigger应该很棒。

教程演示了如何在Azure Portal中创建触发器,它对我有用。然而,(现在15.5.4,最新的)做在Visual Studio一样的东西不。

我用的是默认的 Azure的功能模板,预定义的宇宙DB触发和近默认代码:

[FunctionName("TestTrigger")]
public static void Run(    
    [CosmosDBTrigger("Database", "Collection", ConnectionStringSetting = "myCosmosDB")]
    IReadOnlyList<Document> input,
    TraceWriter log)
    {
        log.Info("Documents modified " + input.Count);
        log.Info("First document Id " + input[0].Id);
    }
Run Code Online (Sandbox Code Playgroud)

应用程序运行没有错误,但是当我实际在数据库中进行操作时,什么也没有发生。因此,我无法调试事物并实际上实现一些必需的逻辑。

连接字符串在指定 local.settings.json被认为是。如果我故意犯规,则触发运行时错误。

看起来连接字符串似乎连接到错误的数据库。但是,正是一个,copypasted,字符串我在通过Azure的门户网站所做的扳机。

我该怎么办?我还能检查什么?

Mik*_*kov 6

根据您的评论,您同时为相同的集合和相同的租约集合同时运行门户和本地应用程序。

这意味着两个应用程序都在争夺收集处理中的锁(租赁)。在您的情况下,门户应用程序获胜并获得了租赁,因此本地应用程序无所事事。