Using APIM and Azure Event Grid Topic and call two diffrent azure functions
Thursday, 17 June 2021
Monday, 22 March 2021
1. Using Http trigger Azure function and showing in url call
using System;
using System.IO;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Logging;
using Newtonsoft.Json;
using System.Data.SqlClient;
using System.Collections.Generic;
namespace SQLFunction
{
public static class Function1
{
[FunctionName("DatabaseFunction")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
log.LogInformation("Connecting to SQL Database");
//string _conn_string = "Server=adminserver1.database.windows.net,1433;Initial Catalog=ProductDb;Persist Security Info=False;User ID=adminserver1;Password=Admin@123;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;";
string _conn_string = Environment.GetEnvironmentVariable("sql_connection");
List<Product> _products = new List<Product>();
using (SqlConnection _connection = new SqlConnection(_conn_string))
{
_connection.Open();
string _query = "select Id,Name,price from Products";
using (SqlCommand _cmd = new SqlCommand(_query, _connection))
{
SqlDataReader _reader = _cmd.ExecuteReader();
while (_reader.Read())
{
Product obj = new Product();
obj.Id = _reader.GetInt32(0);
obj.Name = _reader.GetString(1);
obj.price = _reader.GetString(2);
_products.Add(obj);
}
}
}
return new OkObjectResult(_products);
}
}
}
and for sql data client add below
<ItemGroup>
<PackageReference Include="Microsoft.NET.Sdk.Functions" Version="3.0.3" />
<PackageReference Include="System.Data.SqlClient" Version="4.8.1" />
</ItemGroup>
<ItemGroup>