gpt4 book ai didi

azure-functions - 在 Azure Functions 中初始化单例客户端的位置

转载 作者:行者123 更新时间:2023-12-01 01:46:53 25 4
gpt4 key购买 nike

我正在创建一个新的 Azure 函数来发送电子邮件通知。这个函数,首先需要从 CosmosDB 中获取用户的邮箱地址。我有一个 CosmosDB 客户端包装器类。

我将如何创建 CosmosDB 客户端的单例实例并在我的 Azure 函数中使用它?我想像下面的代码可以创建一个实例,但我如何使它成为一个单例?

public static class MyFunction
{

public static IConfiguration Configuration { get; }
public static Clients.CosmosDb.CosmosDbClient _cosmosDbClient;

[FunctionName("MyFunction")]
public static void Run([QueueTrigger("my-queue", Connection = "AzureWebJobsStorage")]string myQueueItem)
{
// Create CosmosDb Client
Initialize();

// Call CosmosDB
_cosmosDbClient.Read();
}

private static void Initialize()
{
if (_cosmosDbClient == null)
_cosmosDbClient = new Clients.CosmosDb.CosmosDbClient(Configuration);
}
}

最佳答案

最简单的方法是更换您的 Initialize使用静态构造函数:

static MyFunction()
{
// load configuration?
_cosmosDbClient = new Clients.CosmosDb.CosmosDbClient(Configuration);
}

关于azure-functions - 在 Azure Functions 中初始化单例客户端的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47955863/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com