【发布时间】:2019-09-06 13:25:38
【问题描述】:
我正在使用 HttpTrigger 创建一个新的天蓝色函数。我想实现一个天蓝色表存储表作为输入绑定。按照 msdn 中的源代码示例,我无法弄清楚在哪个 NuGet 包中可以找到“表”属性。
编译问题:
找不到类型或命名空间“TableAttribute”(您是否缺少 using 指令或程序集引用?)
导致问题的代码行:
public static async Task<IActionResult>
Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
[Table("AzureWebJobsHostLogscommon")] CloudTable cloudTable,
ILogger log)
我所指的 MSDN 中的源代码示例可以在这里找到:
这里:
第二个例子也展示了 using 指令。但即使在复制示例时,表格属性也无法正确解析。
我也看过这个stackoverflow线程:
input-binding to table storage with an http-triggered function
但第一个解决方案对我来说只是一种解决方法,因为表存储连接是在函数执行期间完成的,而不是作为输入绑定。如果您看到第二个建议的解决方案,它会显示与 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");
}
}
}
建议的实施仍然有效吗?如果是,我必须安装哪个 NuGet 包来解析表属性?
【问题讨论】:
-
是的,这行得通。您能否将您的评论作为答案发送,以便我接受?电视!
-
很高兴它有帮助。见下文
标签: c# azure-functions azure-table-storage