Functions.Templates/Templates/SqlOutputBinding-CSharp/SqlOutputBindingCSharp.cs (38 lines of code) (raw):

using System.IO; using System.Threading.Tasks; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Azure.WebJobs; using Microsoft.Azure.WebJobs.Extensions.Http; using Microsoft.Azure.WebJobs.Extensions.Sql; using Microsoft.Extensions.Logging; using Newtonsoft.Json; namespace Company.Function { public static class SqlOutputBindingCSharp { // Visit https://aka.ms/sqlbindingsoutput to learn how to use this output binding [FunctionName("SqlOutputBindingCSharp")] public static async Task<CreatedResult> Run( [HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequest req, [Sql("table", "SqlConnectionString")] IAsyncCollector<ToDoItem> output, ILogger log) { log.LogInformation("C# HTTP trigger with SQL Output Binding function processed a request."); string requestBody = await new StreamReader(req.Body).ReadToEndAsync(); ToDoItem todoitem = JsonConvert.DeserializeObject<ToDoItem>(requestBody) ?? new ToDoItem { Id = "1", Priority = 1, Description = "Hello World" }; await output.AddAsync(todoitem); return new CreatedResult(req.Path, todoitem); } } public class ToDoItem { public string Id { get; set; } public int Priority { get; set; } public string Description { get; set; } } }