CosmosDBTrigger:指定连接字符串的位置?

时间:2017-12-04 03:09:39

标签: azure azure-cosmosdb azure-functions

使用Visual Studio 2017,我创建了一个新的Azure功能应用程序。我添加了一个函数,其中一个属性参数是ConnectionStringSetting。这应该是对存储在某处的设置的参考,但我无法弄清楚我的生活在哪里。

当我尝试调试方法时,这就是我得到的: enter image description here

我试过将它放在local.settings.json文件中,没有运气。我尝试添加app.config / appSettings部分,但也没有做任何事情。

我在这个方法中没有做任何疯狂的事情:

namespace MyFunctions
{
    public static class TestUpdated
    {
        [FunctionName("DocumentUpdated")]
        public static void Run(
            [CosmosDBTrigger("mydb", "somecollection",
            ConnectionStringSetting = "DbConnString",
            LeaseCollectionName = "lease-test-trigger",
            CreateLeaseCollectionIfNotExists = true)]
            IReadOnlyList<Document> documents, TraceWriter log)
        {
            log.Info("Documents modified " + documents.Count);
            log.Info("First document Id " + documents[0].Id);
        }
    }
}

我的所有扩展程序和nuget包都是最新版本。

那么,你如何设置连接字符串?这是几个小时尝试不同的事情,没有任何作用。

1 个答案:

答案 0 :(得分:8)

public static void Run(
[CosmosDBTrigger("mydb", "somecollection",
ConnectionStringSetting = "DbConnString",
LeaseCollectionName = "lease-test-trigger",
CreateLeaseCollectionIfNotExists = true)]
IReadOnlyList<Document> documents, TraceWriter log)

根据我的经验,应在应用设置中设置ConnectionStringSetting

配置将是:

{
    "IsEncrypted": false,
    "Values": {
        "DbConnString": "...your cosmos db string..."
    }
}