当前位置: 首页 > 知识库问答 >
问题:

如何将Azure函数输入参数绑定到存储帐户?

太叔逸春
2023-03-14

我正在尝试创建一个Azure Function(. NET核心)以从存储帐户检索SaS,并且难以理解为什么我无法访问存储。

函数签名:

public static async Task<IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = null)] HttpRequest req,
[StorageAccount("StorageConnectionString")] StorageAccount storage,
ILogger log)

索引方法“GetBlobSaS”Microsoft时出错。蔚蓝色的网络作业。主机:无法将参数“storage”绑定到类型StorageAccount。确保绑定支持参数类型。如果您使用的是绑定扩展(例如Azure Storage、ServiceBus、Timers等),请确保在启动代码中调用了扩展的注册方法(例如builder.AddAzureStorage()、builder)。AddServiceBus(),生成器。AddTimers()等)。

如果我直接创建存储帐户引用,它可以正常工作:

var storage = StorageAccount.NewFromConnectionString(System.Environment.GetEnvironmentVariable("StorageConnectionString"));

我哪里误会了,哪里做错了?

共有1个答案

虞滨海
2023-03-14

您得到的错误是函数运行时不理解方法签名的错误。[StorageAccount]属性需要CloudStorageAccount。

所以把签名改成:

[FunctionName("Function1")]
public static async Task<IActionResult> Run(
    [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
    [StorageAccount("StorageConnectionString")] CloudStorageAccount storage,
    ILogger log)
{
 类似资料:
  • 我有一个EventHubTrighted函数app。下面是方法签名的代码示例: @functionname(“foo”)@storageaccount(“foostorageRead”)public HttpResponseMessage run(@httptrigger(name=“req”,methods={httpmethod.post},authLevel=authorizationlev

  • 我想使用Python中的Azure函数将JSON数据作为. json文件上传到Azure存储Blob。 因为我使用的是Azure函数,而不是实际的服务器,所以我不想(也可能无法)在本地内存中创建一个临时文件,并使用Azure blob存储客户端库v2将该文件上载到Azure blob存储。1对于Python(这里有参考链接)。因此,我想为Azure函数使用输出blob存储绑定(这里有参考链接)。

  • 告诉我如何在Azure存储帐户中存储PostgreSQL数据库数据。PostgreSQL部署到Azure容器实例。当我重新启动Azure容器实例时,所有数据都会消失。Dockerfile 来自Timescale/Timescaledb:Latest-PG12 az容器创建--resource-group test-env--name test-env--image test-env.azureca

  • 我在Visual Studio 2017中构建了以下简化的Azure功能代码: 我已经在本地文件中添加了一个键“AzureWebJobsConnectionString”。设置。用于开发测试的json。但是,调试时我收到以下错误消息: 错误索引方法“FunctionApp. Run”Microsoft. Azure. WebJobs. Host:错误索引方法“FunctionApp. Run”。M

  • 我正在创建多个 Azure 函数(HTTP 触发器)来从 blob 存储中获取内容,获取单个 blob 的几个元数据值,并获取特定 blob 类型的所有元数据属性。 我对使用绑定与使用blob存储的rest API与azure-storage sdk感到困惑。 创建azure函数时使用哪种方法最好?如果您能给我指出一些此类示例留档,那也会很有帮助。谢谢你。

  • 问题内容: 我想将ID的 数组参数 输入到 Firebird存储过程 。 :INPUT_LIST_ID = [1、2、12、45、75、45] 我需要执行以下SQL命令: 是否有可能?谢谢! 问题答案: 您还可以使用如下所示的内容: 您将必须创建一个名为“ GetIntegerList”的新Firebird过程,该过程类似于以下内容: 注意,这是在Firebird 2.5.2中完成的。