Trong bài viết này, mình sẽ hướng dẫn các bạn cách kết nối SQL Server khi sử dụng Azure Function App trong Visual Studio
Chọn Azure Functions 1 (Net Framework) => HttpTrigger. Hiện tại với Azure Functions 2 (preview), mình chưa kết nối thành công với SQL Server
Bạn bấm Ok để tạo Project mới.
ConfigurationManager.AppSettings: lấy giá trị từ appsettings.
Chúc các bạn thành công
Tạo Project Azure Function Apps
Trong Visual Studio, bạn tạo mới project Azure Function AppsChọn Azure Functions 1 (Net Framework) => HttpTrigger. Hiện tại với Azure Functions 2 (preview), mình chưa kết nối thành công với SQL Server
Bạn bấm Ok để tạo Project mới.
Kết nối với SQL Server
Mở file local.settings.json, thêm connection string:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"AzureWebJobsDashboard": "UseDevelopmentStorage=true",
"DbConnection": "data source=.;initial catalog=<your database>;integrated security=False;user id=<username>;password=<password>;multipleactiveresultsets=True;"
}
}
Trong file Function1.cs, bạn thực hiện việc insert 1 person vào database thông qua Stored Procedure, và lấy giá trị ID sau khi insert data.
[FunctionName("Function1")]
public static async Task Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)]HttpRequestMessage req, TraceWriter log)
{
log.Info("C# HTTP trigger function processed a request.");
var str = ConfigurationManager.AppSettings["DbConnection"];
log.Info(str);
using (SqlConnection conn = new SqlConnection(str))
{
conn.Open();
var text = "sp_insert_people";//stored procedure name
using (SqlCommand cmd = new SqlCommand(text, conn))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@lastname", "an"));
cmd.Parameters.Add(new SqlParameter("@firstname", "binh trong"));
cmd.Parameters.Add(new SqlParameter("@address", "district 6"));
cmd.Parameters.Add(new SqlParameter("@city", "hcm"));
// Execute the command and log the # rows affected.
var rdr = await cmd.ExecuteReaderAsync();
while (rdr.Read())
{
log.Info(rdr[0].ToString());
}
}
}
return req.CreateResponse(HttpStatusCode.OK);
}
ConfigurationManager.AppSettings: lấy giá trị từ appsettings.
Chúc các bạn thành công
Nhận xét
Đăng nhận xét