rek*_*cul 2 c# azure-table-storage azure-functions
我正在使用 HttpTrigger 创建一个新的 azure 函数。我想实现一个天蓝色的表存储表作为输入绑定。按照 msdn 中的源代码示例,我无法确定可以在哪个 NuGet 包中找到“Table”属性。
编译问题:
找不到类型或命名空间“TableAttribute”(您是否缺少 using 指令或程序集引用?)
代码行,导致问题:
public static async Task<IActionResult>
Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
[Table("AzureWebJobsHostLogscommon")] CloudTable cloudTable,
ILogger log)
Run Code Online (Sandbox Code Playgroud)
我所指的 MSDN 中的源代码示例可以在这里找到:
和这里:
第二个示例还显示了 using 指令。但即使在复制示例时,表属性也无法正确解析。
我还看到了这个 stackoverflow 线程:
但第一个解决方案对我来说只是一种解决方法,因为表存储连接是在函数执行期间完成的,而不是作为输入绑定。如果您看到第二个建议的解决方案,它会显示与 MSDN 中相同的代码。
这是我的代码:
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.Extensions.Logging;
using Microsoft.WindowsAzure.Storage.Table;
using System;
using System.Net;
using System.Threading.Tasks;
namespace TableStorageIntegration.HTTPTrigger
{
public static class Function1
{
[FunctionName("DoSomething")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
[Table("AzureWebJobsHostLogscommon")] CloudTable cloudTable,
ILogger log)
{
string someHttpGetParameter = req.Query["someParameter"];
// ....
// Some addition code to be executed here but not relevant for the issue
// .....
return new OkObjectResult($"Data provided");
}
}
}
Run Code Online (Sandbox Code Playgroud)
提议的实施仍然有效吗?如果是,我必须安装哪个 NuGet 包来解析 table 属性?
您需要添加此 NuGet 包:https : //nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.Storage
所以看起来他们出于某种原因已经删除了。TableAttribute
不过,他们正在努力在 2022 年初将其恢复。
同时,如果您使用 Azure 表,则有一些解决方法:
| 归档时间: |
|
| 查看次数: |
723 次 |
| 最近记录: |